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 for Applications窗口.

2。 在 Microsoft Visual Basic for Applications窗口點擊此處成為Trail Hunter 瀏覽 > 項目瀏覽器 屬性窗口o顯示其窗格。

文檔保護隱藏表 01

3. 然後在 項目-VBA項目 窗格中,選擇要隱藏的工作表,然後在 氟化鈉性能 窗格中,單擊 可見 選擇部分 xlSheet非常隱藏 選項,請參見屏幕截圖:

文檔保護隱藏表 02

4。 使工作表非常隱藏之後,您可以設置密碼來保護它。 在裡面 Microsoft Visual Basic for Applications窗口點擊此處成為Trail Hunter 插入 > 模塊 打開一個空的模塊,然後單擊 工具 > VBAProject屬性,請參見屏幕截圖:

文檔保護隱藏表 03

5。 然後在彈出 VBAProject-項目屬性 對話框,單擊 保護 選項卡,然後檢查 鎖定項目以供查看 框,最後,輸入並確認密碼 查看項目屬性的密碼 部分,請參見屏幕截圖:

文檔保護隱藏表 04

6。 然後點擊 OK 按鈕退出此對話框,然後關閉 Microsoft Visual Basic for Applications窗口。

7。 將工作簿另存為 Excel啟用宏的工作簿 格式化並關閉它以使密碼保護生效。

文檔保護隱藏表 05

8。 下次,當您打開此工作簿並希望使隱藏的工作表可見時,要求您輸入密碼。 看截圖:

文檔保護隱藏表 06


演示:設置密碼以保護隱藏的工作表


設置密碼以使用VBA代碼保護隱藏的工作表

要設置密碼來保護隱藏的工作表,我還可以為您介紹一個VBA代碼。

1。 隱藏一個您要保護的工作表。

2。 按住 ALT + F11 鍵打開 Microsoft Visual Basic for Applications窗口.

3。 然後選擇 的ThisWorkbook 從左邊 項目瀏覽器,雙擊以打開 模塊,然後將以下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 =“ Sheet1” 腳本是您要保護的隱藏工作表名稱,並且 123456 如果響應=“ 123456”,則 腳本是您為隱藏工作表設置的密碼。 您可以根據需要更改它們。

4。 現在,當您要顯示隱藏的工作表時,將彈出一個提示框,讓您輸入密碼。 每次單擊以顯示隱藏的工作表時,都會出現此提示框。

文檔保護隱藏表 08


使用Kutools for Excel一次保護多個工作表

通常,如果要一次保護一個工作簿的多個選定的工作表或所有工作表,通常需要在Excel中逐個手動保護。 但是,如果你有 Excel的Kutools,其 保護工作表 實用程序,您可以一鍵保護它們。

Excel的Kutools : 帶有300多個便捷的Excel加載項,可以在30天內免費試用

安裝後 Excel的Kutools,請執行以下操作:

1。 點擊 Kutools 加 > 保護工作表,請參見屏幕截圖:

2。 在 保護工作表 對話框中,工作簿中的所有工作表都列在列錶框中,請選擇要保護的工作表。 看截圖:

文檔保護隱藏表 010

3。 然後點擊 OK,請在以下對話框中輸入您的密碼,然後再次輸入該密碼,然後單擊 OK,將彈出另一個提示框,提醒您已保護了多少個工作表。

文檔保護隱藏表 011

4。 然後點擊 OK 關閉對話框,並且工作簿中的所有工作表均已使用相同的密碼保護。

備註: 如果要一次取消保護所有工作表,只需單擊 Kutools 加 > 取消保護工作表,然後輸入密碼以取消保護。

 立即下載和免費試用Excel的Kutools!


相關文章:

如何在Excel中一次保護多個工作表?

如何設置密碼來保護工作簿?

如何在Excel中保護/鎖定VBA代碼?


最佳辦公效率工具

Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%

  • 重用: 快速插入 複雜的公式,圖表 以及您以前使用過的任何東西; 加密單元 帶密碼 創建郵件列表 並發送電子郵件...
  • 超級公式欄 (輕鬆編輯多行文本和公式); 閱讀版式 (輕鬆讀取和編輯大量單元格); 粘貼到過濾範圍...
  • 合併單元格/行/列 不會丟失數據; 拆分單元格內容; 合併重複的行/列...防止細胞重複; 比較範圍...
  • 選擇重複或唯一 行; 選擇空白行 (所有單元格都是空的); 超級查找和模糊查找 在許多工作簿中; 隨機選擇...
  • 確切的副本 多個單元格,無需更改公式參考; 自動創建參考 到多張紙; 插入項目符號,複選框等...
  • 提取文字,添加文本,按位置刪除, 刪除空間; 創建和打印分頁小計; 在單元格內容和註釋之間轉換...
  • 超級濾鏡 (將過濾方案保存並應用於其他工作表); 高級排序 按月/週/日,頻率及更多; 特殊過濾器 用粗體,斜體...
  • 結合工作簿和工作表; 根據關鍵列合併表; 將數據分割成多個工作表; 批量轉換xls,xlsx和PDF...
  • 超過 300 項強大的功能. 支持 Office / Excel 2007-2021 和 365。支持所有語言。 在您的企業或組織中輕鬆部署。 完整功能 30 天免費試用。 60 天退款保證。
kte選項卡201905

Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!
officetab底部
按評論排序
留言 (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" 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
網站主持人對此評論進行了最小化
找到解決方案了嗎?

我有同樣的問題
網站主持人對此評論進行了最小化
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
將 xSheetName 調暗為字符串
aSheetName = "sheet1"
bSheetName = "sheet2"
cSheetName = "sheet3"

如果 Application.ActiveSheet.Name = aSheetName 則
Application.EnableEvents = False
Application.ActiveSheet.Visible = False
xTitleId = "KutoolsforExcel"
response = Application.InputBox("密碼", xTitleId, "", 類型:=2)
如果響應=“ 1234”,則
Application.Sheets(aSheetName).Visible = True
Application.Sheets(aSheetName).選擇
其他
Application.Sheets(aSheetName).Visible = False
如果結束
如果結束
Application.EnableEvents = True

如果 Application.ActiveSheet.Name = bSheetName Then
Application.EnableEvents = False
Application.ActiveSheet.Visible = False
xTitleId = "KutoolsforExcel"
response = Application.InputBox("密碼", xTitleId, "", 類型:=2)
如果響應=“ 2345”,則
Application.Sheets(bSheetName).Visible = True
Application.Sheets(bSheetName).選擇
其他
Application.Sheets(bSheetName).Visible = False
如果結束
如果結束
Application.EnableEvents = True

如果 Application.ActiveSheet.Name = cSheetName Then
Application.EnableEvents = False
Application.ActiveSheet.Visible = False
xTitleId = "KutoolsforExcel"
response = Application.InputBox("密碼", xTitleId, "", 類型:=2)
如果響應=“ 3456”,則
Application.Sheets(cSheetName).Visible = True
Application.Sheets(cSheetName).選擇
其他
Application.Sheets(cSheetName).Visible = False
如果結束
如果結束
Application.EnableEvents = True

END SUB
網站主持人對此評論進行了最小化
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
將 aSheetName 調暗為字符串
將 bSheetName 調暗為字符串
將 cSheetName 調暗為字符串
aSheetName = "sheet1"
bSheetName = "sheet2"
cSheetName = "sheet3"

如果 Application.ActiveSheet.Name = aSheetName 則
Application.EnableEvents = False
Application.ActiveSheet.Visible = False
xTitleId = "KutoolsforExcel"
response = Application.InputBox("密碼", xTitleId, "", 類型:=2)
如果響應=“ 123”,則
Application.Sheets(aSheetName).Visible = True
Application.Sheets(aSheetName).選擇
其他
Application.Sheets(aSheetName).Visible = False
如果結束
如果結束
Application.EnableEvents = True

如果 Application.ActiveSheet.Name = bSheetName Then
Application.EnableEvents = False
Application.ActiveSheet.Visible = False
xTitleId = "KutoolsforExcel"
response = Application.InputBox("密碼", xTitleId, "", 類型:=2)
如果響應=“ 456”,則
Application.Sheets(bSheetName).Visible = True
Application.Sheets(bSheetName).選擇
其他
Application.Sheets(bSheetName).Visible = False
如果結束
如果結束
Application.EnableEvents = True

如果 Application.ActiveSheet.Name = cSheetName Then
Application.EnableEvents = False
Application.ActiveSheet.Visible = False
xTitleId = "KutoolsforExcel"
response = Application.InputBox("密碼", xTitleId, "", 類型:=2)
如果響應=“ 789”,則
Application.Sheets(cSheetName).Visible = True
Application.Sheets(cSheetName).選擇
其他
Application.Sheets(cSheetName).Visible = False
如果結束
如果結束
Application.EnableEvents = True

END SUB
網站主持人對此評論進行了最小化
感謝您的代碼,只有一個問題。 當您打開被詢問問題的工作表時,您輸入它並且工作表是可見的,但是當您跳到下一個工作表並嘗試重新打開上一個工作表時,每次都會再次要求您輸入相同的密碼。 我的問題是你能繞過它並讓 excel 要求輸入一次密碼嗎?
網站主持人對此評論進行了最小化
您的代碼允許用戶在鼠標指針位於選項卡上時按住鼠標左鍵查看工作表。 試試這個來隱藏工作表,直到輸入正確的密碼: 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
網站主持人對此評論進行了最小化
這是優雅的。 如果打開電子表格的人沒有啟用宏(即 VBA)會發生什麼? 隱藏的床單是坐著的鴨子嗎? 還是完全不可能找到?
網站主持人對此評論進行了最小化
嗨,大衛,
如果您在未啟用宏的情況下打開工作簿,隱藏的工作表將正常顯示。 在這種情況下,我建議你應用第一種方法來解決這個工作。
感謝您!
網站主持人對此評論進行了最小化
jak ktoś ukrył arkusz jak w opisanym pierwszym sposobie, nie znamy hasła to jak odkryć arkusz skoro hasło do visual basic jest w ukrytym arkuszu?
網站主持人對此評論進行了最小化
你好,切卡瓦

抱歉,暫時沒有忘記密碼的情況下取消隱藏表的保護的好辦法。

但是,您可以申請 隱藏所有隱藏的工作表 的特點 Excel的Kutools 無需任何密碼即可取消隱藏所有隱藏的工作表。
https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-unhide-sheets.png
您可以下載 Excel的Kutools 並免費使用 30 天。
請試一試。 謝謝!
這裡還沒有評論
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點

關注我們

版權所有©2009 - 萬維網。extendoffice.com。 | 版權所有。 供電 ExtendOffice。 |
Microsoft和Office徽標是Microsoft Corporation在美國和/或其他國家的商標或註冊商標。
受Sectigo SSL保護