Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.05.2009, 14:08   #1
Катик7
Пользователь
 
Регистрация: 01.05.2009
Сообщений: 11
По умолчанию В книге защищен каждый лист. Как быстро снять защиту со всех листов, а потом ее поставить опять?

Вопрос в заголовке. Защищена не книга целиком, а отдельно листы, их очень большое количество, пароль везде одинаковый.
Заранее спасибо.
Катик7 вне форума Ответить с цитированием
Старый 01.05.2009, 16:28   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Код:
Sub test()
    ДиапазонДляВставкиФормул = "d3:d45":    Формула = "=RC[-1]*RC[-2]"
    Пароль = "123пароль"
    Dim sh As Worksheet: Application.ScreenUpdating = False

    For Each sh In ThisWorkbook.Worksheets    ' перебираем все листы
        sh.Unprotect Пароль    ' снимаем пароль с листа
        sh.Range(ДиапазонДляВставкиФормул).FormulaR1C1 = Формула    ' заносим формулу
        sh.Protect Пароль    ' ставим обратно пароль на лист
    Next sh
End Sub
EducatedFool вне форума Ответить с цитированием
Старый 01.05.2009, 17:36   #3
Катик7
Пользователь
 
Регистрация: 01.05.2009
Сообщений: 11
По умолчанию

Спасибо Вам огромное! Вы очень мне помогли! У меня есть еще один вопросик. Как защитить во всех листах только определенные столбцы или строки?
Катик7 вне форума Ответить с цитированием
Старый 01.05.2009, 22:45   #4
vostok
Форумчанин
 
Регистрация: 29.04.2009
Сообщений: 119
По умолчанию

Это уж совсем просто: выделить группу ячеек, ПКМ-формат ячеек-защита-снять птичку "защищаемая ячейка". После запароливания листа эти ячейки будут доступны.
vostok вне форума Ответить с цитированием
Старый 03.05.2009, 22:41   #5
Катик7
Пользователь
 
Регистрация: 01.05.2009
Сообщений: 11
По умолчанию

Поясните, пожалуйста, что такое ПКМ? Я выделяю группу листов, потом группу ячеек, с которых нужно снять защиту. Но при этом формат- Ячейка не активен.
Катик7 вне форума Ответить с цитированием
Старый 03.05.2009, 22:53   #6
pivas
Форумчанин
 
Регистрация: 03.04.2009
Сообщений: 412
По умолчанию

Катик7, ПКМ - это Правая Кнопка Мышки.
pivas вне форума Ответить с цитированием
Старый 03.05.2009, 22:58   #7
Катик7
Пользователь
 
Регистрация: 01.05.2009
Сообщений: 11
По умолчанию

Спасибо)))))
Катик7 вне форума Ответить с цитированием
Старый 03.05.2009, 23:16   #8
Катик7
Пользователь
 
Регистрация: 01.05.2009
Сообщений: 11
По умолчанию

У меня возникла еще 1 проблема( Как сгруппировать 1 и тот же столбец на всех листах (например, H)? И скрыть его, чтобы не было видно.
Катик7 вне форума Ответить с цитированием
Старый 03.05.2009, 23:24   #9
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Код:
Sub test()
    Dim sh As Worksheet: Application.ScreenUpdating = False
    For Each sh In ThisWorkbook.Worksheets    ' перебираем все листы
        sh.Columns("H").Merge    ' объединяем все ячейки в столбце H

        ' объединяем все ячейки только в используемом диапазоне ячеек столбца J
        Intersect(sh.Columns("J"), sh.UsedRange.EntireRow).Merge

        sh.Columns("G").Hidden = True    ' скрываем столбец G
    Next sh
End Sub
EducatedFool вне форума Ответить с цитированием
Старый 27.04.2011, 15:34   #10
offza
 
Регистрация: 18.02.2011
Сообщений: 5
По умолчанию

Добрый день.
подскажите, пожалуйста.
для защиты/снятия защиты со всей книги использую макрос:

Sub Protect()
Dim sh As Worksheet: Application.ScreenUpdating = False

For Each sh In ThisWorkbook.Worksheets
sh.Protect ([123])
Next sh
End Sub

Но он работает только на той книге, в которой он сохранен. Даже если я его пишу в PERSONAL.XLSB.
Как заставить его работать для всех книг?

Любые другие макросы работают везде.

Спасибо!
offza вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как снять защиту всех листов или раскидать данные в одинаковые ячейки в защищенные листы Тантана Microsoft Office Excel 8 19.02.2013 19:49
Макрос для всех листов в книге Rok Microsoft Office Excel 5 26.04.2010 08:55
Снять/поставить автофильтр на несколько листов разом kzld Microsoft Office Excel 14 14.02.2010 05:54
Получить имена всех листов в книге Temnota Microsoft Office Excel 6 26.12.2009 07:36
Автоматически снять защиту с листов Chelentano Microsoft Office Excel 2 24.07.2009 20:55