Макрос для защиты всех листов книги excel

Skip to content

Как защитить все листы в файле

На чтение 2 мин. Просмотров 2.8k.

Что делает макрос: Вы можете защитить все листы в файле
перед тем, как распространить свои книги.
Вместо того чтобы защищать каждый лист вручную, вы можете использовать этот макрос.

Содержание

  1. Как макрос работает
  2. Код макроса
  3. Как работает этот код
  4. Как использовать

Как макрос работает

В этом макросе вы выбираете листы и просто применяете защиту с помощью пароля.
Пароль аргумент определяет пароль, необходимый для снятия защиты. Аргумент Пароль не является обязательным. Если его вообще опустить, лист по-прежнему будет защищен; вам просто не нужно будет вводить пароль для снятия его защиты. Кроме того, следует помнить, что пароли Excel чувствительны к регистру.

Код макроса

Sub ZaschititVseListi()
 'Шаг 1: Объявляем переменные
 Dim ws As Worksheet
 'Шаг : Запускаем цикл через все рабочие листы
 For Each ws In ActiveWorkbook.Worksheets
 'Шаг 3: Ставим защиту и переходим к следующему листу
 ws.Protect Password:="КРАСНЫЙ"
 Next ws
 End Sub

Как работает этот код

  1. Шаг 1 объявляет объект под названием WS. Он создает контейнер памяти для каждого рабочего листа.
  2. Шаг 2 начинает процесс в Excel — проходит через все рабочие листы.
  3. На шаге 3, макрос применяет защиту с данным паролем, а затем возвращается обратно, чтобы получить рабочий лист.

Как использовать

  1. Активируйте редактор Visual Basic, нажав ALT + F11.
  2. Щелкните правой кнопкой мыши personal.xlb в окне Project.
  3. Выберите Insert➜Module.
  4. Введите или вставьте код во вновь созданном модуле.

Правильная защита макросом

В большинстве случаев защита макросом, которую я встречаю во множестве проектов, выглядит следующим образом:

Worksheets("Лист1").Unprotect Password:="123"
'тут макрос делает действия
Worksheets("Лист1").Protect Password:="123"

То есть автор файла вынужден ставить защиту от шаловливых ручек пользователей, но чтобы его макрос мог выполнить необходимые действия, ему приходится временно снимать ее и затем включать снова. Такая техника работает, но далека от совершенства. Во-первых, это неудобно и требует введения подобных конструкций в каждый ваш макрос. Во-вторых, если выполнение макроса прервется с ошибкой, то лист останется незащищенным.

Есть гораздо более легкий и красивый способ решить задачу.

Нажмите Alt+F11, чтобы попасть в редактор Visual Basic. Затем найдите в левом верхнем углу в окне Project Explorer (если его не видно, то нажмите Ctrl+R) модуль ЭтаКнига (ThisWorkbook) и откройте двойным щелчком:

smart_protection1.gif

Скопируйте туда этот код:

Private Sub Workbook_Open()
    'включаем защиту первого листа для пользователя, но не макроса
    Worksheets("Лист1").Protect Password:="123", UserInterfaceOnly:=True
    
    'второй лист защищаем аналогично, но с возможностью пользоваться группировкой
    Worksheets("Лист2").EnableOutlining = True
    Worksheets("Лист2").Protect Password:="555", UserInterfaceOnly:=True
End Sub

Эта процедура будет автоматически запускаться при открытии файла и ставить защиту на заданные листы книги. Причем параметр UserInterfaceOnly, который мы дополнительно ввели, указывает Excel, что защита не должна распространяться на действия выполняемые макросом, а только на операции пользователя. Для второго листа все еще веселее — строка с параметром EnableOutlining разрешает пользоваться группировкой (символы плюс-минус для сворачивания-разворачивания строк и столбцов) на защищенном листе.

Всего три строчки кода, зато как удобно!

Ссылки по теме

  • Что такое макросы и куда копировать их код
  • Как поставить защиту листа, книги или всего файла

Предположим, у вас есть книга, содержащая несколько листов, и теперь вам нужно защитить все рабочие листы или некоторые конкретные рабочие листы, обычно в Excel вы можете защищать лист только один за другим с помощью функции Защитить лист, но этот метод утомителен и требует много времени, если необходимо защитить большое количество листов. Как быстро и легко защитить сразу несколько листов в Excel?

Защитите все листы сразу с помощью кода VBA

Защитите несколько листов одновременно с помощью Kutools for Excel

Снимите защиту сразу с нескольких листов с помощью kutools for Excel


стрелка синий правый пузырь Защитите все листы сразу с помощью кода VBA

С помощью следующего кода VBA вы можете защитить сразу все листы активной книги одним и тем же паролем, сделайте следующее:

1. Удерживайте ALT + F11 ключи, и он открывает Microsoft Visual Basic для приложений окно.

2. Нажмите Вставить > Модулии вставьте следующий код в Окно модуля.

Код VBA: защитить все листы в книге сразу:

Sub protect_all_sheets()
top: 
pass = InputBox("password?") 
repass = InputBox("Verify Password") 
If Not (pass = repass) Then 
MsgBox "you made a boo boo" 
Goto top 
End If 
For i = 1 To Worksheets.Count 
If Worksheets(i).ProtectContents = True Then Goto oops 
Next 
For Each s In ActiveWorkbook.Worksheets 
s.Protect Password:=pass 
Next 
Exit Sub 
oops: MsgBox "I think you have some sheets that are already protected. Please unprotect all sheets then running this Macro." 
End Sub

3, Затем нажмите F5 ключ для запуска кода и введите пароль для защищенных листов в поле подсказки, см. снимок экрана:

док-защита-несколько-листов1-1

4. Нажмите OK, а затем введите пароль еще раз, чтобы подтвердить пароль.

док-защита-несколько-листов2-2

5. Затем нажмите OK, и все листы были защищены одним паролем.


стрелка синий правый пузырь Защитите несколько листов одновременно с помощью Kutools for Excel

Иногда вы не хотите защищать все листы в своей книге, а хотите защитить только некоторые конкретные листы, в этой ситуации приведенный выше код не будет работать. Но с Kutools for ExcelАвтора Защитить лист утилита, вы можете быстро и легко защитить как все листы, так и отдельные листы.

После установки Kutools for Excel, выполните следующие действия:

1. Нажмите Кутулс Плюс > Защитить лист, см. снимок экрана:

2. В Защитить лист В диалоговом окне выберите листы, которые нужно защитить. (По умолчанию проверяются все листы в текущей книге.) См. Снимок экрана:

док-защита-несколько-листов4-4

3, И нажмите OK, а затем введите и подтвердите пароль в диалоговом окне «Защита рабочего листа». Смотрите скриншот:

док-защита-несколько-листов5-5

4. Затем нажмите OK, выбранные листы защищены.

Щелкните «Защитить лист», чтобы узнать больше об этой функции.


стрелка синий правый пузырь Снимите защиту сразу с нескольких листов с помощью kutools for Excel

Как вы могли снять защиту с нескольких защищенных листов в книге одновременно? Конечно, Kutools for Excel также предоставляет Снять защиту листа утилита, позволяющая сразу же снять с них защиту.

Пожалуйста, сделайте следующие шаги:

1. Откройте книгу, содержащую защищенные листы.

2. Затем нажмите Кутулс Плюс > Снять защиту листа, см. снимок экрана:

3. В Снять защиту листа диалоговое окно, защищенные листы заносятся в список, затем щелкните Ok кнопку, см. снимок экрана:

док-защита-несколько-листов7-7

4. А потом Снять защиту листа диалоговое окно появляется, чтобы напомнить вам ввести пароль, который вы создали для защиты рабочих листов, см. снимок экрана:

док-защита-несколько-листов8-8

5. После ввода пароля нажмите Ok, все отмеченные листы в списке не защищены.

Примечание: Рабочие листы должны иметь одинаковый пароль.

Чтобы узнать больше об этой функции Снять защиту листа.

Скачать и бесплатную пробную версию Kutools for Excel от Yhao сейчас!


стрелка синий правый пузырь Демонстрация: защитите или снимите защиту сразу со всех рабочих листов с помощью Kutools for Excel


Связанная статья:

Как снять защиту сразу с нескольких листов в Excel?


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Защита листа от изменений пользователями в Excel устанавливается разными способами, рассмотрим два варианта установки защиты листа, классический, при помощи стандартных средств Excel и менее распространенный — с помощью макроса.

Как установить защиту листа в Excel 2003

Для того чтобы установить защиту на лист, необходимо перейти в пункт меню Сервис/Защита/Защитить лист…

как защитить лист в excel 2003

При необходимости можно установить пароль для отключения защиты, введя его дважды в диалоговых окнах.

Как установить защиту листа в Excel 2007

Кнопка «Защитить лист» расположена на вкладке «Рецензирование». Нажав её, Вы без труда установите защиту на активный лист стандартным способом.

как защитить лист в excel 2007

Для отключения защиты листа можно установить пароль.

Как установить защиту листа в Excel 2010

Защита листа в Excel 2010 осуществляется аналогично тому, как это делается в Excel 2007. Для этого необходимо перейти на вкладку «Рецензирование» и нажать на кнопку «Защитить лист».

как защитить лист в excel 2010

После этого можно установить пароль для отключения защиты листа.

Как защитить лист паролем в Excel 2013

как установить защиту листа в excel 2013 

Для защиты листа в Excel 2013 необходимо перейти на вкладку «Рецензирование», как и в предыдущих версиях и в группе кнопок «Изменения» нажать кнопку «Защитить лист», отметить галочками разрешенные пользователям действия и при необходимости ввести пароль с последующим его подтверждением.

Как защитить лист в Excel 2016

В Excel 2016 защита на лист устанавливается аналогично тому, как это делается в предыдущей версии. После перехода на вкладку «Рецензирование» нажимается кнопка «Защитить лист», отмечаются разрешения и при необходимости устанавливается пароль, который подтверждается повторным вводом.

как установить защиту листа в excel 2016

Быстрая защита листов

Если в рабочей книге содержится несколько листов, то можно пройтись по каждому листу и на каждый установить защиту. Групповая защита листов в Excel не предусмотрена, только по одному. Ускорить этот процесс можно при помощи VBA-надстройки, которая устанавливается в Excel и добавляет к его стандартным возможностям дополнительный функционал. После установки надстройки на ленте Excel появляется дополнительная кнопка, при помощи которой можно вызвать диалоговое окно и выбрать нужный режим установки защиты.

Защита листов без пароля

Защитить листы рабочей книги от случайных, неосторожных действий можно без использования пароля. Для этого достаточно вызвать диалоговое окно надстройки (его изображение показано ниже), выбрать опцию «Один пароль на все листы», а текстовое поле для ввода пароля оставить пустым.

Защита листов одним паролем

При ручной установке защиты с использованием паролей, на каждом листе запрашивается подтверждение, то есть пароль приходится вносить дважды на каждом листе.  Вариант вполне приемлем, когда такую операцию приходится делать редко, а количество листов небольшое. Если же защита устанавливается и снимается достаточно часто, а рабочие книги содержат несколько листов, то защитить листы от изменений можно программно, при помощи макроса (надстройки). Макрос пройдет по всем листам рабочей книге и установит защиту на те листы, которые выбрал пользователь. Если в текстовое поле диалогового окна внести пароль, то на листы рабочей книги будет установлена защита практически мгновенно. Чтобы не забыть введенный пароль, можно установить флажок в поле «Сохранить пароли отдельным файлом». В этом случае программно создается еще одна рабочая книга, которая содержит введенный пароль и сохраняется в ту же папку, в которой находится книга с защищаемыми листами.

Защита листов отдельными случайными паролями

В надстройке предусмотрена возможность программно защищать листы отдельными паролями. При выборе соответствующей опции в диалоговом окне, надстройка генерирует случайные пароли заданной длины и устанавливает защиту с использованием этих паролей. Сами пароли могут быть автоматически записаны в отдельный файл и сохранены в папку с исходной рабочей книгой. После запуска программы макрос позволяет быстро защитить листы рабочей книги разными паролями.

Выборочная защита листов паролями из файла

Если в рабочей книге Excel в столбце «A» написать имена листов, а в столбце «B» — пароли для защиты листов с соответствующими именами и сохранить эту книгу на жестком диске, то такой файл можно использовать для программной установки защиты. Если файл содержит более одного листа, то лист рабочей книги, содержащий имена и пароли должен быть активным при сохранении. В диалоговом окне программы выбирается соответствующая опция и при помощи кнопки обзора указывается файл с паролями. Этот вариант защиты можно использовать в случаях, когда необходимо установить пароли не на все листы, а выборочно.

Надстройка для быстрой установки защиты

как установить защиту на листы рабочей книгиCompleteSolutionмакрос (надстройка) для быстрой установки защиты на листы рабочей книги

Надстройка позволяет:

1. Быстро защитить листы рабочей книги без пароля (поле для ввода пароля должно оставаться пустым);

2. быстро установить защиту с использованием одного пароля;

3. защитить листы случайными паролями заданной длины (от 1 до 255 символов);

4. сохранить пароли в отдельный файл (файл сохраняется на жестком диске в папке с защищаемой рабочей книгой);

5. использовать для установки защиты пароли из файла (столбец «А» — имена листов, столбец «В» — пароли к ним);

6. выборочно защищать листы (в файле с именами и паролями указываются только те имена листов, которые необходимо запаролить);

7. устанавливать различные сочетания разрешенных действий для защищенных листов;

8. защищать все листы рабочей книги, видимые, скрытые и непустые листы, листы с заданными именами, номерами или определенными значениями в заданном диапазоне ячеек.

*имена листов указываются без пробелов, через точку с запятой «;»

также могут использоваться специальные символы совпадения * и ?

Следует заметить, что установка пароля при защите листа может подвергаться взлому и подбору пароля путем перебора символов и не является надежным способом защиты информации, скорее это защита от механических ошибочных изменений, а также от неопытных пользователей. Кроме защиты листа, в Excel существуют и другие способы защиты данных, такие как защита файла паролем и защита книги.

Видео по работе с надстройкой

Другие материалы по теме:

This will allow you to protect or unprotct all worksheets in a workbook at once. It doesn’t allow you to input a password; however, if you run the unprotect_all macro and there are worksheets that are password protected, it will prompt you to input the password in order to unprotect the worksheet and will do so for every worksheet that is password protected.

Where to install the macro:  Module

Protect All Worksheets at Once

Sub Protect_All()

For i = 1 To Sheets.Count
 Sheets(i).Protect
Next i

 End Sub

Unprotect All Worksheets at Once

Sub Unprotect_All()

For i = 1 To Sheets.Count
 Sheets(i).Unprotect
Next i

End Sub


Excel VBA Course

Excel VBA Course — From Beginner to Expert

200+ Video Lessons
50+ Hours of Instruction
200+ Excel Guides

Become a master of VBA and Macros in Excel and learn how to automate all of your tasks in Excel with this online course. (No VBA experience required.)

View Course

Similar Content on TeachExcel

Print All Worksheets at Once in Excel

Tutorial: How to print all worksheets at once from Excel.
This saves you the time of having to go to…

View Different Parts of a Worksheet at Once in Excel

Tutorial:
View different sections of the same worksheet when the sections are far apart.  This all…

Display all Formulas at Once in Excel

Tutorial: How to view all of the formulas at once in Excel so that you can troubleshoot the spreadsh…

3D References — Formulas that Reference Multiple Sheets at Once in Excel

Tutorial:
Have one simple formula that will reference the same cell or range of cells on multiple w…

Edit Multiple Worksheets at Once in Excel

Tutorial: How to edit multiple worksheets at the same time; this includes adding, editing, deleting,…

View Separate Parts of a Worksheet at Once in Excel

Tutorial: View separate parts of a large worksheet while in the same Excel window. This allows you t…

How to Install the Macro

  1. Select and copy the text from within the grey box above.
  2. Open the Microsoft Excel file in which you would like the Macro to function.
  3. Press «Alt + F11» — This will open the Visual Basic Editor — Works for all Excel Versions.
     Or For other ways to get there, Click Here.
  4. On the new window that opens up, go to the left side where the vertical pane is located. Locate your Excel file; it will be called VBAProject (YOUR FILE’S NAME HERE) and click this.
  5. If the Macro goes in a Module, Click Here, otherwise continue to Step 8.
  6. If the Macro goes in the Workbook or ThisWorkbook, Click Here, otherwise continue to Step 8.
  7. If the Macro goes in the Worksheet Code, Click Here, otherwise continue to Step 8.
  8. Close the Microsoft Visual Basic Editor window and save the Excel file. When you close the Visual Basic Editor window, the regular Excel window will not close.
  9. You are now ready to run the macro.

Similar Content

Print All Worksheets at Once in Excel

Tutorial: How to print all worksheets at once from Excel.
This saves you the time of having to go to…

View Different Parts of a Worksheet at Once in Excel

Tutorial:
View different sections of the same worksheet when the sections are far apart.  This all…

Display all Formulas at Once in Excel

Tutorial: How to view all of the formulas at once in Excel so that you can troubleshoot the spreadsh…

Excel VBA Course

Excel VBA Course — From Beginner to Expert

200+ Video Lessons

50+ Hours of Video

200+ Excel Guides

Become a master of VBA and Macros in Excel and learn how to automate all of your tasks in Excel with this online course. (No VBA experience required.)

View Course

Макросы защиты и снятия защиты со всех листов в книге

Sub MassProtect1()

Dim wsh As Worksheet
Dim strpassword As String
Dim i As Integer

strpassword = InputBox("Введите пароль")

i = 0

For Each wsh In ActiveWorkbook.Worksheets

wsh.Protect Password:=strpassword

i = i + 1
Application.StatusBar = "Установка защиты на лист" & wsh.Name & "¦ ¦ ¦ ¦ ¦ Общий прогресс ¦" & i & "¦ из ¦" & ActiveWorkbook.Sheets.Count

Next wsh

MsgBox ("Защита установлена. Пароль:" & strpassword)
End Sub
Sub MassUnProtect1()

Dim wsh As Worksheet
Dim strpassword As String
Dim i As Integer

strpassword = InputBox("Введите пароль")

i = 0

For Each wsh In ActiveWorkbook.Worksheets

wsh.Unprotect Password:=strpassword

i = i + 1
Application.StatusBar = "Снятие защиты с листа" & wsh.Name & "¦ ¦ ¦ ¦ ¦ Общий прогресс ¦" & i & "¦ из¦" & ActiveWorkbook.Sheets.Count

Next wsh

MsgBox ("Защита снята.")
End Sub


Содержание

  1. Метод Worksheet.Protect (Excel)
  2. Синтаксис
  3. Параметры
  4. Замечания
  5. Поддержка и обратная связь
  6. Как защитить лист в Excel паролем? Защита всех листов разными паролями
  7. Как установить защиту листа в Excel 2003
  8. Как установить защиту листа в Excel 2007
  9. Как установить защиту листа в Excel 2010
  10. Как защитить лист паролем в Excel 2013
  11. Как защитить лист в Excel 2016
  12. Быстрая защита листов
  13. Защита листов без пароля
  14. Защита листов одним паролем
  15. Защита листов отдельными случайными паролями
  16. Выборочная защита листов паролями из файла
  17. Надстройка для быстрой установки защиты
  18. Надстройка позволяет:

Метод Worksheet.Protect (Excel)

Защищает лист, чтобы его нельзя было изменить.

Синтаксис

expression. Защита (Password, DrawingObjects, Contents, Scenarios, UserInterfaceOnly, AllowFormattingCells, AllowFormattingColumns, AllowFormattingRows, AllowInsertingColumns, AllowInsertingRows, AllowInsertingHyperlinks, AllowDeletingColumns, AllowDeletingRows, AllowSorting, AllowFiltering, AllowUsingPivotTables )

Выражение Переменная, представляющая объект Worksheet .

Параметры

Имя Обязательный или необязательный Тип данных Описание
Password Необязательный Variant Строка, указывающая пароль для листа или книги с учетом регистра. Если этот аргумент опущен, можно снять защиту листа или книги, не используя пароль. В противном случае необходимо указать пароль для отмены защиты листа или книги. Если вы забыли пароль, вы не сможете снять защиту листа или книги.

Используйте надежные пароли, содержащие строчные и прописные буквы, цифры и знаки. В слабых паролях эти элементы не комбинируются. Надежный пароль: Y6dh!et5. Слабый пароль: House27. Длина паролей должна быть не меньше 8 символов. В парольной фразе лучше использовать 14 или более символов.

Очень важно запомнить пароль. Если вы его забудете, корпорация Майкрософт не сможет его восстановить. Храните пароли, записанные на бумаге, в безопасном месте вдали от информации, которую они защищают. DrawingObjects Необязательный Variant Значение true для защиты фигур. Значение по умолчанию — True. Contents Необязательный Variant Значение true для защиты содержимого. Для диаграммы это защищает всю диаграмму. Для листа это защищает заблокированные ячейки. Значение по умолчанию — True. Scenarios Необязательный Variant Значение true для защиты сценариев. Этот аргумент действителен только для листов. Значение по умолчанию — True. UserInterfaceOnly Необязательный Variant Значение true для защиты пользовательского интерфейса, но не макросов. Если этот аргумент опущен, защита применяется как к макросам, так и к пользовательскому интерфейсу. AllowFormattingCells Необязательный Variant Значение True позволяет пользователю форматировать любую ячейку на защищенном листе. Значение по умолчанию — False. AllowFormattingColumns Необязательный Variant Значение True позволяет пользователю форматировать любой столбец на защищенном листе. Значение по умолчанию — False. AllowFormattingRows Необязательный Variant Значение True позволяет пользователю форматировать любую строку на защищенном листе. Значение по умолчанию — False. AllowInsertingColumns Необязательный Variant Значение True позволяет пользователю вставлять столбцы на защищенный лист. Значение по умолчанию — False. AllowInsertingRows Необязательный Variant Значение True позволяет пользователю вставлять строки на защищенный лист. Значение по умолчанию — False. AllowInsertingHyperlinks Необязательный Variant Значение True позволяет пользователю вставлять гиперссылки на защищенный лист. Значение по умолчанию — False. AllowDeletingColumns Необязательный Variant Значение True позволяет пользователю удалять столбцы на защищенном листе, где каждая ячейка удаляемого столбца разблокирована. Значение по умолчанию — False. AllowDeletingRows Необязательный Variant Значение True позволяет пользователю удалять строки на защищенном листе, где каждая ячейка в удаляемой строке разблокирована. Значение по умолчанию — False. AllowSorting Необязательный Variant Значение True позволяет пользователю выполнять сортировку на защищенном листе. Каждая ячейка в диапазоне сортировки должна быть разблокирована или не защищена. Значение по умолчанию — False. AllowFiltering Необязательный Variant Значение True позволяет пользователю задавать фильтры на защищенном листе. Пользователи могут изменять условия фильтра, но не могут включать или отключать автоматический фильтр. Пользователи могут задавать фильтры для существующего автофильтра. Значение по умолчанию — False. AllowUsingPivotTables Необязательный Variant Значение True позволяет пользователю использовать отчеты сводной таблицы на защищенном листе. Значение по умолчанию — False.

Замечания

В предыдущих версиях, если применить этот метод с аргументом UserInterfaceOnly , равным True , а затем сохранить книгу, при повторном открытии книги будет полностью защищен весь лист (а не только интерфейс). Чтобы повторно включить защиту пользовательского интерфейса после открытия книги, необходимо снова применить этот метод, если параметр UserInterfaceOnly имеет значение True.

Если вы хотите внести изменения в защищенный лист, можно использовать метод Protect на защищенном листе, если указан пароль. Кроме того, другой метод — снять защиту листа, внести необходимые изменения, а затем снова защитить лист.

Незащищено означает, что ячейка может быть заблокирована (диалоговое окно Форматирование ячеек ), но включена в диапазон, определенный в диалоговом окне Разрешить пользователям изменять диапазоны , и пользователь отключил защиту диапазона паролем или был проверен с помощью разрешений NT.

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.

Источник

Как защитить лист в Excel паролем? Защита всех листов разными паролями

Защита листа от изменений пользователями в Excel устанавливается разными способами, рассмотрим два варианта установки защиты листа, классический, при помощи стандартных средств Excel и менее распространенный — с помощью макроса.

Как установить защиту листа в Excel 2003

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

При необходимости можно установить пароль для отключения защиты, введя его дважды в диалоговых окнах.

Как установить защиту листа в Excel 2007

Кнопка «Защитить лист» расположена на вкладке «Рецензирование». Нажав её, Вы без труда установите защиту на активный лист стандартным способом.

Для отключения защиты листа можно установить пароль.

Как установить защиту листа в Excel 2010

Защита листа в Excel 2010 осуществляется аналогично тому, как это делается в Excel 2007. Для этого необходимо перейти на вкладку «Рецензирование» и нажать на кнопку «Защитить лист».

После этого можно установить пароль для отключения защиты листа.

Как защитить лист паролем в Excel 2013

Для защиты листа в Excel 2013 необходимо перейти на вкладку «Рецензирование», как и в предыдущих версиях и в группе кнопок «Изменения» нажать кнопку «Защитить лист», отметить галочками разрешенные пользователям действия и при необходимости ввести пароль с последующим его подтверждением.

Как защитить лист в Excel 2016

В Excel 2016 защита на лист устанавливается аналогично тому, как это делается в предыдущей версии. После перехода на вкладку «Рецензирование» нажимается кнопка «Защитить лист», отмечаются разрешения и при необходимости устанавливается пароль, который подтверждается повторным вводом.

Быстрая защита листов

Если в рабочей книге содержится несколько листов, то можно пройтись по каждому листу и на каждый установить защиту. Групповая защита листов в Excel не предусмотрена, только по одному. Ускорить этот процесс можно при помощи VBA-надстройки, которая устанавливается в Excel и добавляет к его стандартным возможностям дополнительный функционал. После установки надстройки на ленте Excel появляется дополнительная кнопка, при помощи которой можно вызвать диалоговое окно и выбрать нужный режим установки защиты.

Защита листов без пароля

Защитить листы рабочей книги от случайных, неосторожных действий можно без использования пароля. Для этого достаточно вызвать диалоговое окно надстройки (его изображение показано ниже), выбрать опцию «Один пароль на все листы», а текстовое поле для ввода пароля оставить пустым.

Защита листов одним паролем

При ручной установке защиты с использованием паролей, на каждом листе запрашивается подтверждение, то есть пароль приходится вносить дважды на каждом листе. Вариант вполне приемлем, когда такую операцию приходится делать редко, а количество листов небольшое. Если же защита устанавливается и снимается достаточно часто, а рабочие книги содержат несколько листов, то защитить листы от изменений можно программно, при помощи макроса (надстройки). Макрос пройдет по всем листам рабочей книге и установит защиту на те листы, которые выбрал пользователь. Если в текстовое поле диалогового окна внести пароль, то на листы рабочей книги будет установлена защита практически мгновенно. Чтобы не забыть введенный пароль, можно установить флажок в поле «Сохранить пароли отдельным файлом». В этом случае программно создается еще одна рабочая книга, которая содержит введенный пароль и сохраняется в ту же папку, в которой находится книга с защищаемыми листами.

Защита листов отдельными случайными паролями

В надстройке предусмотрена возможность программно защищать листы отдельными паролями. При выборе соответствующей опции в диалоговом окне, надстройка генерирует случайные пароли заданной длины и устанавливает защиту с использованием этих паролей. Сами пароли могут быть автоматически записаны в отдельный файл и сохранены в папку с исходной рабочей книгой. После запуска программы макрос позволяет быстро защитить листы рабочей книги разными паролями.

Выборочная защита листов паролями из файла

Если в рабочей книге Excel в столбце «A» написать имена листов, а в столбце «B» — пароли для защиты листов с соответствующими именами и сохранить эту книгу на жестком диске, то такой файл можно использовать для программной установки защиты. Если файл содержит более одного листа, то лист рабочей книги, содержащий имена и пароли должен быть активным при сохранении. В диалоговом окне программы выбирается соответствующая опция и при помощи кнопки обзора указывается файл с паролями. Этот вариант защиты можно использовать в случаях, когда необходимо установить пароли не на все листы, а выборочно.

Надстройка для быстрой установки защиты

Надстройка позволяет:

1. Быстро защитить листы рабочей книги без пароля (поле для ввода пароля должно оставаться пустым);

2. быстро установить защиту с использованием одного пароля;

3. защитить листы случайными паролями заданной длины (от 1 до 255 символов);

4. сохранить пароли в отдельный файл (файл сохраняется на жестком диске в папке с защищаемой рабочей книгой);

5. использовать для установки защиты пароли из файла (столбец «А» — имена листов, столбец «В» — пароли к ним);

6. выборочно защищать листы (в файле с именами и паролями указываются только те имена листов, которые необходимо запаролить);

7. устанавливать различные сочетания разрешенных действий для защищенных листов;

8. защищать все листы рабочей книги, видимые, скрытые и непустые листы, листы с заданными именами, номерами или определенными значениями в заданном диапазоне ячеек.

*имена листов указываются без пробелов, через точку с запятой «;»

также могут использоваться специальные символы совпадения * и ?

Следует заметить, что установка пароля при защите листа может подвергаться взлому и подбору пароля путем перебора символов и не является надежным способом защиты информации, скорее это защита от механических ошибочных изменений, а также от неопытных пользователей. Кроме защиты листа, в Excel существуют и другие способы защиты данных, такие как защита файла паролем и защита книги.

Источник

  1. Что делает макрос
  2. Код макроса
  3. Как работает макрос
  4. Как использовать
  5. Скачать файл

Ссылка на это место страницы:
#zadacha

Если Вам постоянно приходится думать о защите листов, прежде чем отправить свои файлы, этот макрос может помочь вам защитить рабочие листы перед закрытием 

Этот код запускается событием рабочей книги (BeforeClose— перед закрытием). При нажатии на кнопку закрыть срабатывает событие и запускается макрос. Макрос автоматически защищает рабочий лист, а затем сохраняет книгу 

Ссылка на это место страницы:
#formula

  1. Private Sub Workbook_BeforeClose(Cancel As Boolean)
  2. Sheets("Отчет1").Protect Password:="Akademia_Excel"
  3. ActiveWorkbook.Save
  4. End Sub

Ссылка на это место страницы:
#kak

1. На шаге 1 мы явно указываем, какой лист мы хотим защитить — Отчёт, в данном случае. Мы также прописываем аргумент Password (пароль): = «Akademia_Excel». Это строка установит пароль для снятия защиты. Password (пароль) — аргумент не является обязательным. Если его не указывать, то лист будет по-прежнему защищен, но снять защиту сможет любой желающий. Кроме того, следует помнить, что пароли Excel чувствительны к регистру, так что обратите внимание на заглавные и строчные буквы в пароле. 

2. Шагом 2 мы говорим Excel сохранить книгу. Если мы не сохраним, то защита не будет действовать при следующем открытии книги. 

Ссылка на это место страницы:
#touse

Для реализации этого макроса, Вам нужно скопировать и вставить его в код события Workbook_BeforeClose

Размещение макроса здесь позволяет запускать макрос непосредственно перед закрытием Excel файла. 

1. Активируйте редактор Visual Basic, нажав ALT + F11
2. В окне проекта найдите свой проект/имя рабочей книги и нажмите на знак плюс рядом с ним в чтобы увидеть все листы и модуль ЭтаКнига. 
3. Правой кнопкой мыши нажмите на модуле ЭтаКнига и выберите View Code
4. В левой верхней части окна выберите объект WorkBook (Excel автоматом предложит написать макрос для события Workbook_Open (можете позже удалить его за ненадобностью).
5. В правом верхнем выпадающем списке выберите свойство BeforeClose

Ссылка на это место страницы:
#file

Файлы статей доступны только зарегистрированным пользователям.

1. Введите свою почту

2. Нажмите Зарегистрироваться

3. Обновите страницу
Вместо этого блока появится ссылка для скачивания материалов.

Привет! Меня зовут Дмитрий. С 2014 года Microsoft Cretified Trainer. Вместе с командой управляем этим сайтом. Наша цель — помочь вам эффективнее работать в Excel. 

Изучайте наши статьи с примерами формул, сводных таблиц, условного форматирования, диаграмм и макросов. Записывайтесь на наши курсы или заказывайте обучение в корпоративном формате.

Подписывайтесь на нас в соц.сетях:

Понравилась статья? Поделить с друзьями:
  • Макрос для запуска кнопки excel
  • Макрос для заполнения формы excel
  • Макрос для замены формул в excel
  • Макрос для замены текста excel
  • Макрос для замены слов excel