Перейти к основному содержанию

Как установить пароль для защиты скрытого листа в Excel?

Автор: Сяоян Последнее изменение: 2020 июля 05 г.

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

Установите пароль для защиты скрытых листов с помощью функции VeryHidden

Установите пароль для защиты скрытого листа с кодом VBA

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


Установите пароль для защиты скрытых листов с помощью функции VeryHidden

Обычно вы можете использовать функцию VeryHidden, чтобы сначала скрыть рабочие листы, а затем установить для них пароль, выполните следующие действия:

1. Откройте книгу и удерживайте Alt + F11, чтобы открыть Окно Microsoft Visual Basic для приложений.

2. В Окно Microsoft Visual Basic для приложений, нажмите Вид > Обозреватель проекта и Окно свойств to отображать их панели.

док-защита-скрытые-листы-01

3. А потом в Проект-VBAProject панели, выберите лист, который вы хотите скрыть, и в Объекты панели, щелкните раскрывающийся список из Видимый для выбора кслшитверихидден вариант, см. снимок экрана:

док-защита-скрытые-листы-02

4. Сделав рабочий лист очень скрытым, вы можете установить пароль для его защиты. в Окно Microsoft Visual Basic для приложений, нажмите Вставить > Модули чтобы открыть пустой модуль, а затем щелкните Инструменты > Свойства VBAProject, см. снимок экрана:

док-защита-скрытые-листы-03

5. Затем в выскочившем Свойства VBAProject-Project диалоговое окно, нажмите Protection вкладку, а затем проверьте Заблокировать проект для просмотра поле, наконец, введите и подтвердите пароль в Пароль для просмотра свойств проекта раздел, см. снимок экрана:

док-защита-скрытые-листы-04

6. Затем нажмите OK кнопку, чтобы выйти из этого диалогового окна, и закройте Окно Microsoft Visual Basic для приложений.

7. Сохраните книгу как Excel Macro-Enabled Workbook отформатируйте и закройте его, чтобы сработала защита паролем.

док-защита-скрытые-листы-05

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

док-защита-скрытые-листы-06


Демонстрация: установка пароля для защиты скрытых листов


Установите пароль для защиты скрытого листа с кодом VBA

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

1. Скройте один лист, который вы хотите защитить.

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

3. Потом выберите Эта рабочая тетрадь слева Обозреватель проекта, дважды щелкните его, чтобы открыть Модули, а затем скопируйте и вставьте следующий код VBA в пустой модуль:

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

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim xSheetName As String
xSheetName = "Sheet1"
If Application.ActiveSheet.Name = xSheetName Then
    Application.EnableEvents = False
    Application.ActiveSheet.Visible = False
    xTitleId = "KutoolsforExcel"
    response = Application.InputBox("Password", xTitleId, "", Type:=2)
    If response = "123456" Then
        Application.Sheets(xSheetName).Visible = True
        Application.Sheets(xSheetName).Select
    End If
End If
Application.Sheets(xSheetName).Visible = True
Application.EnableEvents = True
End Sub

док-защита-скрытые-листы-07

Внимание: В приведенном выше коде Sheet1 xSheetName = "Лист1" скрипт - это скрытое имя рабочего листа, который вы хотите защитить, и 123456 в Если response = "123456" Тогда script - это пароль, который вы установили для скрытого листа. Вы можете изменить их по своему усмотрению.

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

док-защита-скрытые-листы-08


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

Если вы хотите защитить несколько выбранных или все листы книги одновременно, обычно вам нужно защищать один за другим вручную в Excel. Но если у вас есть Kutools for Excel, С его Защитить лист утилиту, вы можете защитить их одним щелчком мыши.

Kutools for Excel : с более чем 300 удобными надстройками Excel, бесплатно и без ограничений в течение 30 дней

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

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

2. В Защитить лист В диалоговом окне все листы в книге перечислены в поле со списком, выберите листы, которые вы хотите защитить. Смотрите скриншот:

док-защита-скрытые-листы-010

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

док-защита-скрытые-листы-011

4. Затем нажмите OK , чтобы закрыть диалоговые окна, и все рабочие листы в книге были защищены одним паролем.

Примечание: Если вы хотите снять защиту со всех листов сразу, вам просто нужно нажать Кутулс Плюс > Снять защиту листа, и введите свой пароль, чтобы снять защиту.

 Загрузите бесплатную пробную версию Kutools for Excel прямо сейчас!


Статьи по теме:

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

Как установить пароль для защиты книги?

Как защитить / заблокировать код VBA в Excel?

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

🤖 Kutools AI Помощник: Революционный анализ данных на основе: Интеллектуальное исполнение   |  Генерировать код  |  Создание пользовательских формул  |  Анализ данных и создание диаграмм  |  Вызов функций Kutools...
Популярные опции: Найдите, выделите или определите дубликаты   |  Удалить пустые строки   |  Объедините столбцы или ячейки без потери данных   |   Раунд без формулы ...
Супер поиск: Множественный критерий VLookup    VLookup с несколькими значениями  |   VLookup по нескольким листам   |   Нечеткий поиск ....
Расширенный раскрывающийся список: Быстрое создание раскрывающегося списка   |  Зависимый раскрывающийся список   |  Выпадающий список с множественным выбором ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка Фокус   |  Просмотр дизайна   |   Большой Формулный Бар    Менеджер книг и листов   |  Библиотека ресурсов (Авто текст)   |  Выбор даты   |  Комбинировать листы   |  Шифровать/дешифровать ячейки    Отправлять электронные письма по списку   |  Суперфильтр   |   Специальный фильтр (фильтровать жирным шрифтом/курсивом/зачеркиванием...) ...
15 лучших наборов инструментов12 Текст Инструменты (Добавить текст, Удалить символы, ...)   |   50+ График Тип (Диаграмма Ганта, ...)   |   40+ Практических Формулы (Рассчитать возраст по дню рождения, ...)   |   19 Вносимые Инструменты (Вставить QR-код, Вставить изображение из пути, ...)   |   12 Конверсия Инструменты (Числа в слова, Конверсия валюты, ...)   |   7 Слияние и разделение Инструменты (Расширенные ряды комбинирования, Разделить клетки, ...)   |   ... и более

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

Описание


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

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Comments (10)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
jak ktoś ukrył arkusz jak w opisanym pierwszym sposobie, a nie znamy hasła to jak odkryć arkusz skoro hasło do visual basic jest w ukrytym arkuszu?
This comment was minimized by the moderator on the site
Hello, ciekawa

Sorry, at present, there is no good way for canceling the protect of the hidden sheet if you forget the password.

But, you can apply the Uhide all hidden sheets feature of Kutools for Excel to unhide all the hidden sheets without any password.
https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-unhide-sheets.png
You can download Kutools for Excel and use it freely for 30 days.
Please have a try. Thank you!
This comment was minimized by the moderator on the site
This is elegant. IF the person opening the spreadsheet does not enable macros (i.e. VBA) what happens? Is the hidden sheet a sitting duck? Or is it quite impossible to find?
This comment was minimized by the moderator on the site
Hi, David,
If you open the workbook without enabling the macro, the hidden sheet is displayed as normal. In this case, I recommend you to apply the first method for solving this job.
Thank you!
This comment was minimized by the moderator on the site
Your code allows users to view the sheet as long as they hold the left mouse button while the mouse pointer is on the tab. Try this to keep sheet hidden until correct password is entered: If response = "123456" Then Application.Sheets(xSheetName).Visible = True Application.Sheets(xSheetName).Select Else Application.Sheets(xSheetName).Visible = False[/b][/b] End If End If Application.EnableEvents = True End Sub
This comment was minimized by the moderator on the site
I have a question about your password restricted worksheet code. You posted the following code which works....what I am looking for is code that will do this with multiple worksheets and multiple passwords within the same workbook. Is this possible? Private Sub Workbook_SheetActivate(ByVal Sh As Object) 'Update 20140925 Dim xSheetName As String xSheetName = "sheet1" If Application.ActiveSheet.Name = xSheetName Then Application.EnableEvents = False Application.ActiveSheet.Visible = False xTitleId = "KutoolsforExcel" response = Application.InputBox("Password", xTitleId, "", Type:=2) If response = "123456" Then Application.Sheets(xSheetName).Visible = True Application.Sheets(xSheetName).Select End If End If Application.Sheets(xSheetName).Visible = True Application.EnableEvents = True End Sub
This comment was minimized by the moderator on the site
Found a solution yet?

I am having the same problem
This comment was minimized by the moderator on the site
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim aSheetName As String
Dim bSheetName As String
Dim cSheetName As String
aSheetName = "sheet1"
bSheetName = "sheet2"
cSheetName = "sheet3"

If Application.ActiveSheet.Name = aSheetName Then
Application.EnableEvents = False
Application.ActiveSheet.Visible = False
xTitleId = "KutoolsforExcel"
response = Application.InputBox("Password", xTitleId, "", Type:=2)
If response = "123" Then
Application.Sheets(aSheetName).Visible = True
Application.Sheets(aSheetName).Select
Else
Application.Sheets(aSheetName).Visible = False
End If
End If
Application.EnableEvents = True

If Application.ActiveSheet.Name = bSheetName Then
Application.EnableEvents = False
Application.ActiveSheet.Visible = False
xTitleId = "KutoolsforExcel"
response = Application.InputBox("Password", xTitleId, "", Type:=2)
If response = "456" Then
Application.Sheets(bSheetName).Visible = True
Application.Sheets(bSheetName).Select
Else
Application.Sheets(bSheetName).Visible = False
End If
End If
Application.EnableEvents = True

If Application.ActiveSheet.Name = cSheetName Then
Application.EnableEvents = False
Application.ActiveSheet.Visible = False
xTitleId = "KutoolsforExcel"
response = Application.InputBox("Password", xTitleId, "", Type:=2)
If response = "789" Then
Application.Sheets(cSheetName).Visible = True
Application.Sheets(cSheetName).Select
Else
Application.Sheets(cSheetName).Visible = False
End If
End If
Application.EnableEvents = True

End Sub
This comment was minimized by the moderator on the site
Thanks for the code, just have one question. When you open the sheet you are asked for question, then you enter it and the sheet is visible, but when you jump to next sheet and try to re-open previous sheet, you are asked for the same password again everytime. My question is can you bypass that and make excel ask for password once?
This comment was minimized by the moderator on the site
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim xSheetName As String
aSheetName = "sheet1"
bSheetName = "sheet2"
cSheetName = "sheet3"

If Application.ActiveSheet.Name = aSheetName Then
Application.EnableEvents = False
Application.ActiveSheet.Visible = False
xTitleId = "KutoolsforExcel"
response = Application.InputBox("Password", xTitleId, "", Type:=2)
If response = "1234" Then
Application.Sheets(aSheetName).Visible = True
Application.Sheets(aSheetName).Select
Else
Application.Sheets(aSheetName).Visible = False
End If
End If
Application.EnableEvents = True

If Application.ActiveSheet.Name = bSheetName Then
Application.EnableEvents = False
Application.ActiveSheet.Visible = False
xTitleId = "KutoolsforExcel"
response = Application.InputBox("Password", xTitleId, "", Type:=2)
If response = "2345" Then
Application.Sheets(bSheetName).Visible = True
Application.Sheets(bSheetName).Select
Else
Application.Sheets(bSheetName).Visible = False
End If
End If
Application.EnableEvents = True

If Application.ActiveSheet.Name = cSheetName Then
Application.EnableEvents = False
Application.ActiveSheet.Visible = False
xTitleId = "KutoolsforExcel"
response = Application.InputBox("Password", xTitleId, "", Type:=2)
If response = "3456" Then
Application.Sheets(cSheetName).Visible = True
Application.Sheets(cSheetName).Select
Else
Application.Sheets(cSheetName).Visible = False
End If
End If
Application.EnableEvents = True

End Sub
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations