powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Пароль сразу на все листы книги
14 сообщений из 14, страница 1 из 1
Пароль сразу на все листы книги
    #33283611
Dimen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня 20 листов в книге, и все они стоят на защите.
Что бы внести изменения, нужно со всех по очереди снимать, а потом опять ставить защиту.
Можно ли эту процедуру делать сразу для всех листов один раз, со всех снимать и на все ставить?
...
Рейтинг: 0 / 0
Пароль сразу на все листы книги
    #33283730
Дурак
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А на ВСЮ книгу нельзя повесить read-only пароль?

Или речь идет о другой защите?
...
Рейтинг: 0 / 0
Пароль сразу на все листы книги
    #33284548
Dimen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Часть ячеек в во всех листах защищена от изменений, это ячейки которые получают данные по связям, остальное в принципе можно менять, поэтому приходится ставить пароль
...
Рейтинг: 0 / 0
Пароль сразу на все листы книги
    #33284704
Фотография nibbles
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
for each myObj in activeworkbook.worksheets
myObj.Unprotect "12343"
next
...
Рейтинг: 0 / 0
Пароль сразу на все листы книги
    #33284874
Dimen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Огромное спасибо!!!
...
Рейтинг: 0 / 0
Пароль сразу на все листы книги
    #33286156
Dimen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Последний вопрос возник уже в процессе.
Все работает, но как сделать что бы на каждом листе сохранялись свои настройки защиты? Где то можно форматировать где нет, а этот макрос ставит на защиту все листы по одному сценарию.
Заранее спасибо!
...
Рейтинг: 0 / 0
Пароль сразу на все листы книги
    #33286263
Без указания параметров Protect запароливает по максимум.

Воспользуйся параметрами метода Method. Если Excel > 2000 (для 2000 набор параметров весьма скромен), то:

AllowFormattingCells. The default value is False.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
    Dim ws As Worksheet
    
    For Each ws In ActiveWorkbook.Worksheets
        If ws.Name = "Лист1" Then
            ActiveSheet.Protect Password:="1234", _
              AllowFormattingCells:=True
        Else
            ActiveSheet.Protect Password:="1234"
        End If
    Next
...
Рейтинг: 0 / 0
Пароль сразу на все листы книги
    #33286383
Пользователь2Воспользуйся параметрами метода Method.
Метода Protect ессно. :)
...
Рейтинг: 0 / 0
Пароль сразу на все листы книги
    #33286613
Dimen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Блин, не могу врубиться как записать, что бы на всех листах (их всего 20, первый INFO, последний CADET)
можно было только форматировать строки столбцы и ячейки
не позволяя менять данные после включения макроса
...
Рейтинг: 0 / 0
Пароль сразу на все листы книги
    #33286979
Dimen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите сделать менее объемным макрос;

Sub protect()
Sheets("INFO").Select
ActiveSheet.protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Sheets("CREW").Select
ActiveSheet.protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True
Sheets("EFFECT").Select
ActiveSheet.protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True
Sheets("STORE").Select
ActiveSheet.protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True
Sheets("DECK").Select
ActiveSheet.protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True
End Sub
...
Рейтинг: 0 / 0
Пароль сразу на все листы книги
    #33287038
Фотография nibbles
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DimenПомогите сделать менее объемным макрос;

Sub protect()
Sheets("INFO").Select
ActiveSheet.protect DrawingObjects:=True, Contents:=True, Scenarios:=True
Sheets("CREW").Select
ActiveSheet.protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True
Sheets("EFFECT").Select
ActiveSheet.protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True
Sheets("STORE").Select
ActiveSheet.protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True
Sheets("DECK").Select
ActiveSheet.protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True
End Sub

Код: plaintext
1.
2.
3.
4.
5.
dim mysheet as Excel.Sheet
    For each mysheet in activeworkbook.sheets
        mysheet.protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
        , AllowFormattingCells:=True, AllowFormattingColumns:=True, _
        AllowFormattingRows:=True
    next

Складывается впечатение, что Вы не совсем внимательно прочли то, что Вам написали. В частности - сообщение 1903195
...
Рейтинг: 0 / 0
Пароль сразу на все листы книги
    #33287099
Dimen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все правильно, и тот и этот макросы защищают сразу все листы, просто как и в сообщении 1907119 я хотел чтобы первый лист "INFO"нельзя было форматировать (только вносить данные) как все остальные 19
...
Рейтинг: 0 / 0
Пароль сразу на все листы книги
    #33287268
Фотография nibbles
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда делайте внутри цикла "развилку" - в чем проблема:
Код: plaintext
1.
2.
3.
4.
If mySheet.Name = "INFO" then
    ...
else
    ...
end if
...
Рейтинг: 0 / 0
Пароль сразу на все листы книги
    #33287371
Dimen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо!
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Пароль сразу на все листы книги
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]