Прескочи на основното съдържание

Как да задам парола за защита на скрития лист в Excel?

Автор: Xiaoyang Последна промяна: 2020-05-19

Ако имате работна книга, която съдържа някои важни скрити работни листове, и не позволявайте на други да ги показват. Сега трябва да зададете парола, за да защитите напълно скритите работни листове, когато други потребители ги покажат, те трябва да въведат паролата. Имате ли начини да се справите с тази задача бързо и лесно в Excel?

Задайте парола за защита на скритите листове с функцията VeryHidden

Задайте парола за защита на скрития лист с VBA код

Защитете няколко работни листа наведнъж с Kutools за Excel


Задайте парола за защита на скритите листове с функцията VeryHidden

Обикновено можете да използвате функцията VeryHidden, за да скриете първо работните листове и след това да зададете парола за тях, моля, направете следните стъпки:

1. Отворете работната си книга и задръжте Alt + F11за да отворите Прозорец на Microsoft Visual Basic за приложения.

2. В Прозорец на Microsoft Visual Basic за приложения, Щракнете върху Гледка > Project Explorer намлява Прозорец за свойства to показват техните панели.

doc-protect-hidden-sheets-01

3. И тогава в Проект-VBAProject изберете работния лист, който искате да скриете, и в Имоти прозорец, щракнете върху падащия списък от Видим за да изберете xlSheetVeryHidden опция, вижте екранна снимка:

doc-protect-hidden-sheets-02

4. След като направите работния лист много скрит, можете да зададете парола, за да го защитите. В Прозорец на Microsoft Visual Basic за приложения, Щракнете върху Поставете > Модули за да отворите празен модул и след това щракнете Инструменти > Свойства на VBAProject, вижте екранна снимка:

doc-protect-hidden-sheets-03

5. След това изскочи VBAProject-Свойства на проекта кликнете върху Защита , след което проверете Заключване на проекта за преглед накрая въведете и потвърдете паролата в Парола за преглед на свойствата на проекта раздел, вижте екранна снимка:

doc-protect-hidden-sheets-04

6, След това кликнете OK бутон, за да излезете от този диалогов прозорец и да затворите Прозорец на Microsoft Visual Basic за приложения.

7. Запазете работната книга като Работна книга с активирани макроси на Excel форматирайте и го затворете, за да влезе в сила защитата с парола.

doc-protect-hidden-sheets-05

8. Следващия път, когато отворите тази работна книга и искате да направите видими много скритите листове, ще бъдете помолени да въведете парола. Вижте екранна снимка:

doc-protect-hidden-sheets-06


Демо: Задайте парола за защита на скритите листове


Задайте парола за защита на скрития лист с VBA код

За да зададете парола за защита на скритите листове, мога да говоря и за VBA код за вас.

1. Скрийте един работен лист, който искате да защитите.

2. Задръжте натиснат ALT + F11 за да отворите Прозорец на Microsoft Visual Basic за приложения.

3, След това изберете Тази работна книга отляво Project Explorer, щракнете два пъти върху него, за да отворите Модулии след това копирайте и поставете следния 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

doc-protect-hidden-sheets-07

Забележка: В горния код, Sheet1 от xSheetName = "Лист1" script е скритото име на работен лист, което искате да защитите, и 123456 в Ако отговор = "123456" Тогава script е паролата, която задавате за скрития лист. Можете да ги промените според вашите нужди.

4. Сега, когато искате да покажете скрития лист, ще изскочи поле за подкана, за да ви позволи да въведете паролата. И това поле за подкана ще се появява всеки път, когато щракнете, за да покажете скрития лист.

doc-protect-hidden-sheets-08


Защитете няколко работни листа наведнъж с Kutools за Excel

Ако искате да защитите няколко избрани или всички работни листове от работна книга наведнъж, обикновено трябва да защитите един по един ръчно в Excel. Но, ако имате Kutools за Excel, Със своята Защита на работния лист помощна програма, можете да ги защитите с едно щракване.

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

След инсталиране Kutools за Excel, моля, направете следното:

1. Щракнете Kutools плюс > Защита на работния лист, вижте екранна снимка:

2. В Защита на работния лист диалогов прозорец, всички работни листове в работната книга са изброени в списъчното поле, моля, изберете работните листове, които искате да защитите. Вижте екранна снимка:

doc-protect-hidden-sheets-010

3, И после щракнете върху OK, в следния диалогов прозорец, моля, въведете вашата парола и я въведете отново, след което щракнете OK, ще изскочи друго поле за подкана, за да ви напомни колко работни листа са били защитени.

doc-protect-hidden-sheets-011

4, След това кликнете OK за затваряне на диалоговите прозорци и всички работни листове в работната книга са защитени с една и съща парола.

Забележка: Ако искате да премахнете защитата на всички работни листове наведнъж, просто трябва да щракнете Kutools плюс > Премахване на защитата на работния листи въведете паролата си, за да отмените защитата.

 Изтеглете и изпробвайте безплатно Kutools за Excel сега!


Още по темата:

Как да защитите няколко работни листа наведнъж в Excel?

Как да задам парола за защита на работната книга?

Как да защитим / заключим VBA код в Excel?

Най-добрите инструменти за продуктивност в офиса

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

Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време.  Щракнете тук, за да получите функцията, от която се нуждаете най-много...

Описание


Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна

  • Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
  • Увеличава вашата производителност с 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