Note: The other languages of the website are Google-translated. Back to English

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

Если у вас есть книга, которая содержит некоторые важные скрытые рабочие листы, и вы не разрешаете другим показывать их. Теперь вам нужно установить пароль, чтобы полностью защитить скрытые рабочие листы, когда другие пользователи отображают их, они должны ввести пароль. Есть ли у вас какие-либо способы быстро и легко справиться с этой задачей в 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 for Excel решает большинство ваших проблем и увеличивает вашу производительность на 80%

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

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

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
офисный дно
Сортировать комментарии по
Комментарии (10)
Оценок пока нет. Оцените первым!
Этот комментарий был сведен к минимуму модератором на сайте
У меня есть вопрос о вашем коде листа с ограниченным паролем. Вы разместили следующий код, который работает... я ищу код, который будет делать это с несколькими листами и несколькими паролями в одной книге. Это возможно? 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" = Application .InputBox("Пароль", xTitleId, "", Тип:=2) Если ответ = "123456", Тогда Application.Sheets(xSheetName).Visible = True Application.Sheets(xSheetName).Выберите End If End If Application.Sheets( xSheetName).Visible = True Application.EnableEvents = True End Sub
Этот комментарий был сведен к минимуму модератором на сайте
Решение уже найдено?

У меня та же проблема
Этот комментарий был сведен к минимуму модератором на сайте
Private Sub Workbook_SheetActivate (ByVal Sh As Object)
Dim xSheetName как строка
aSheetName = "лист1"
bSheetName = "лист2"
cSheetName = "лист3"

Если Application.ActiveSheet.Name = aSheetName Тогда
Application.EnableEvents = False
Application.ActiveSheet.Visible = Ложь
xTitleId = "KutoolsforExcel"
ответ = Application.InputBox ("Пароль", xTitleId, "", Тип: = 2)
Если response = "1234" Тогда
Application.Sheets(aSheetName).Visible = True
Application.Sheets(aSheetName).Выбрать
Еще
Application.Sheets(aSheetName).Visible = False
End If
End If
Application.EnableEvents = True

Если Application.ActiveSheet.Name = bSheetName Тогда
Application.EnableEvents = False
Application.ActiveSheet.Visible = Ложь
xTitleId = "KutoolsforExcel"
ответ = Application.InputBox ("Пароль", xTitleId, "", Тип: = 2)
Если response = "2345" Тогда
Application.Sheets(bSheetName).Visible = True
Application.Sheets(bSheetName).Выбрать
Еще
Application.Sheets(bSheetName).Visible = False
End If
End If
Application.EnableEvents = True

Если Application.ActiveSheet.Name = cSheetName Тогда
Application.EnableEvents = False
Application.ActiveSheet.Visible = Ложь
xTitleId = "KutoolsforExcel"
ответ = Application.InputBox ("Пароль", xTitleId, "", Тип: = 2)
Если response = "3456" Тогда
Application.Sheets(cSheetName).Visible = True
Application.Sheets(cSheetName).Выбрать
Еще
Application.Sheets(cSheetName).Visible = False
End If
End If
Application.EnableEvents = True

End Sub
Этот комментарий был сведен к минимуму модератором на сайте
Private Sub Workbook_SheetActivate (ByVal Sh As Object)
Dim aSheetName как строка
Dim bSheetName как строка
Dim cSheetName как строка
aSheetName = "лист1"
bSheetName = "лист2"
cSheetName = "лист3"

Если Application.ActiveSheet.Name = aSheetName Тогда
Application.EnableEvents = False
Application.ActiveSheet.Visible = Ложь
xTitleId = "KutoolsforExcel"
ответ = Application.InputBox ("Пароль", xTitleId, "", Тип: = 2)
Если response = "123" Тогда
Application.Sheets(aSheetName).Visible = True
Application.Sheets(aSheetName).Выбрать
Еще
Application.Sheets(aSheetName).Visible = False
End If
End If
Application.EnableEvents = True

Если Application.ActiveSheet.Name = bSheetName Тогда
Application.EnableEvents = False
Application.ActiveSheet.Visible = Ложь
xTitleId = "KutoolsforExcel"
ответ = Application.InputBox ("Пароль", xTitleId, "", Тип: = 2)
Если response = "456" Тогда
Application.Sheets(bSheetName).Visible = True
Application.Sheets(bSheetName).Выбрать
Еще
Application.Sheets(bSheetName).Visible = False
End If
End If
Application.EnableEvents = True

Если Application.ActiveSheet.Name = cSheetName Тогда
Application.EnableEvents = False
Application.ActiveSheet.Visible = Ложь
xTitleId = "KutoolsforExcel"
ответ = Application.InputBox ("Пароль", xTitleId, "", Тип: = 2)
Если response = "789" Тогда
Application.Sheets(cSheetName).Visible = True
Application.Sheets(cSheetName).Выбрать
Еще
Application.Sheets(cSheetName).Visible = False
End If
End If
Application.EnableEvents = True

End Sub
Этот комментарий был сведен к минимуму модератором на сайте
Спасибо за код, только есть один вопрос. Когда вы открываете лист, вам задают вопрос, затем вы вводите его, и лист виден, но когда вы переходите к следующему листу и пытаетесь повторно открыть предыдущий лист, вас снова запрашивают один и тот же пароль каждый раз. Мой вопрос: можете ли вы обойти это и заставить Excel запрашивать пароль один раз?
Этот комментарий был сведен к минимуму модератором на сайте
Ваш код позволяет пользователям просматривать лист, пока они держат левую кнопку мыши, пока указатель мыши находится на вкладке. Попробуйте сделать так, чтобы лист оставался скрытым до тех пор, пока не будет введен правильный пароль: Если ответ = "123456", то 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
Этот комментарий был сведен к минимуму модератором на сайте
Это элегантно. ЕСЛИ человек, открывающий электронную таблицу, не включает макросы (например, VBA), что происходит? Является ли скрытый лист сидячей уткой? Или его совсем невозможно найти?
Этот комментарий был сведен к минимуму модератором на сайте
Привет, Дэвид,
Если открыть книгу без включения макроса, скрытый лист отображается как обычно. В этом случае я рекомендую вам применить первый метод для решения этой задачи.
Спасибо!
Этот комментарий был сведен к минимуму модератором на сайте
как кто укрыл аркуша, как с описанием пирвшым способом, а не знамы хашла, чтобы як одкрыч аркуш скоро сделал визуальную основную шутку с укрытым аркушем?
Этот комментарий был сведен к минимуму модератором на сайте
Привет, Чекава

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

Но вы можете применить Показать все скрытые листы особенность Kutools for Excel чтобы показать все скрытые листы без пароля.
https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-unhide-sheets.png
Вы можете скачать Kutools for Excel и используйте его бесплатно в течение 30 дней.
Пожалуйста, попробуйте. Благодарю вас!
Здесь еще нет комментариев
Оставляйте свои комментарии
Публикация как гость
×
Оценить этот пост:
0   Характеристики
Предлагаемые места

Подписывайтесь на Нас

Copyright © 2009 - www.extendoffice.ком. | Все права защищены. Питаться от ExtendOffice, | Карта сайта
Microsoft и логотип Office являются товарными знаками или зарегистрированными товарными знаками Microsoft Corporation в США и / или других странах.
Защищено Sectigo SSL