Skip to content
Как защитить все листы в файле
На чтение 2 мин. Просмотров 2.8k.
Что делает макрос: Вы можете защитить все листы в файле
перед тем, как распространить свои книги.
Вместо того чтобы защищать каждый лист вручную, вы можете использовать этот макрос.
Содержание
- Как макрос работает
- Код макроса
- Как работает этот код
- Как использовать
Как макрос работает
В этом макросе вы выбираете листы и просто применяете защиту с помощью пароля.
Пароль аргумент определяет пароль, необходимый для снятия защиты. Аргумент Пароль не является обязательным. Если его вообще опустить, лист по-прежнему будет защищен; вам просто не нужно будет вводить пароль для снятия его защиты. Кроме того, следует помнить, что пароли Excel чувствительны к регистру.
Код макроса
Sub ZaschititVseListi() 'Шаг 1: Объявляем переменные Dim ws As Worksheet 'Шаг : Запускаем цикл через все рабочие листы For Each ws In ActiveWorkbook.Worksheets 'Шаг 3: Ставим защиту и переходим к следующему листу ws.Protect Password:="КРАСНЫЙ" Next ws End Sub
Как работает этот код
- Шаг 1 объявляет объект под названием WS. Он создает контейнер памяти для каждого рабочего листа.
- Шаг 2 начинает процесс в Excel — проходит через все рабочие листы.
- На шаге 3, макрос применяет защиту с данным паролем, а затем возвращается обратно, чтобы получить рабочий лист.
Как использовать
- Активируйте редактор Visual Basic, нажав ALT + F11.
- Щелкните правой кнопкой мыши personal.xlb в окне Project.
- Выберите Insert➜Module.
- Введите или вставьте код во вновь созданном модуле.
Правильная защита макросом
В большинстве случаев защита макросом, которую я встречаю во множестве проектов, выглядит следующим образом:
Worksheets("Лист1").Unprotect Password:="123" 'тут макрос делает действия Worksheets("Лист1").Protect Password:="123"
То есть автор файла вынужден ставить защиту от шаловливых ручек пользователей, но чтобы его макрос мог выполнить необходимые действия, ему приходится временно снимать ее и затем включать снова. Такая техника работает, но далека от совершенства. Во-первых, это неудобно и требует введения подобных конструкций в каждый ваш макрос. Во-вторых, если выполнение макроса прервется с ошибкой, то лист останется незащищенным.
Есть гораздо более легкий и красивый способ решить задачу.
Нажмите Alt+F11, чтобы попасть в редактор Visual Basic. Затем найдите в левом верхнем углу в окне Project Explorer (если его не видно, то нажмите Ctrl+R) модуль ЭтаКнига (ThisWorkbook) и откройте двойным щелчком:
Скопируйте туда этот код:
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 ключ для запуска кода и введите пароль для защищенных листов в поле подсказки, см. снимок экрана:
4. Нажмите OK, а затем введите пароль еще раз, чтобы подтвердить пароль.
5. Затем нажмите OK, и все листы были защищены одним паролем.
Защитите несколько листов одновременно с помощью Kutools for Excel
Иногда вы не хотите защищать все листы в своей книге, а хотите защитить только некоторые конкретные листы, в этой ситуации приведенный выше код не будет работать. Но с Kutools for ExcelАвтора Защитить лист утилита, вы можете быстро и легко защитить как все листы, так и отдельные листы.
После установки Kutools for Excel, выполните следующие действия:
1. Нажмите Кутулс Плюс > Защитить лист, см. снимок экрана:
2. В Защитить лист В диалоговом окне выберите листы, которые нужно защитить. (По умолчанию проверяются все листы в текущей книге.) См. Снимок экрана:
3, И нажмите OK, а затем введите и подтвердите пароль в диалоговом окне «Защита рабочего листа». Смотрите скриншот:
4. Затем нажмите OK, выбранные листы защищены.
Щелкните «Защитить лист», чтобы узнать больше об этой функции.
Снимите защиту сразу с нескольких листов с помощью kutools for Excel
Как вы могли снять защиту с нескольких защищенных листов в книге одновременно? Конечно, Kutools for Excel также предоставляет Снять защиту листа утилита, позволяющая сразу же снять с них защиту.
Пожалуйста, сделайте следующие шаги:
1. Откройте книгу, содержащую защищенные листы.
2. Затем нажмите Кутулс Плюс > Снять защиту листа, см. снимок экрана:
3. В Снять защиту листа диалоговое окно, защищенные листы заносятся в список, затем щелкните Ok кнопку, см. снимок экрана:
4. А потом Снять защиту листа диалоговое окно появляется, чтобы напомнить вам ввести пароль, который вы создали для защиты рабочих листов, см. снимок экрана:
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-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Защита листа от изменений пользователями в 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 существуют и другие способы защиты данных, такие как защита файла паролем и защита книги.
Видео по работе с надстройкой
Другие материалы по теме:
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 — 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
- Select and copy the text from within the grey box above.
- Open the Microsoft Excel file in which you would like the Macro to function.
- Press «Alt + F11» — This will open the Visual Basic Editor — Works for all Excel Versions.
Or For other ways to get there, Click Here. - 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.
- If the Macro goes in a Module, Click Here, otherwise continue to Step 8.
- If the Macro goes in the Workbook or ThisWorkbook, Click Here, otherwise continue to Step 8.
- If the Macro goes in the Worksheet Code, Click Here, otherwise continue to Step 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.
- 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 — 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
Содержание
- Метод Worksheet.Protect (Excel)
- Синтаксис
- Параметры
- Замечания
- Поддержка и обратная связь
- Как защитить лист в Excel паролем? Защита всех листов разными паролями
- Как установить защиту листа в Excel 2003
- Как установить защиту листа в Excel 2007
- Как установить защиту листа в Excel 2010
- Как защитить лист паролем в Excel 2013
- Как защитить лист в Excel 2016
- Быстрая защита листов
- Защита листов без пароля
- Защита листов одним паролем
- Защита листов отдельными случайными паролями
- Выборочная защита листов паролями из файла
- Надстройка для быстрой установки защиты
- Надстройка позволяет:
Метод 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 существуют и другие способы защиты данных, такие как защита файла паролем и защита книги.
Источник
- Что делает макрос
- Код макроса
- Как работает макрос
- Как использовать
- Скачать файл
Ссылка на это место страницы:
#zadacha
Если Вам постоянно приходится думать о защите листов, прежде чем отправить свои файлы, этот макрос может помочь вам защитить рабочие листы перед закрытием
Этот код запускается событием рабочей книги (BeforeClose— перед закрытием). При нажатии на кнопку закрыть срабатывает событие и запускается макрос. Макрос автоматически защищает рабочий лист, а затем сохраняет книгу
Ссылка на это место страницы:
#formula
Private
Sub
Workbook_BeforeClose(Cancel
As
Boolean
)
Sheets(
"Отчет1"
).Protect Password:=
"Akademia_Excel"
ActiveWorkbook.Save
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.
Изучайте наши статьи с примерами формул, сводных таблиц, условного форматирования, диаграмм и макросов. Записывайтесь на наши курсы или заказывайте обучение в корпоративном формате.
Подписывайтесь на нас в соц.сетях: