[英]Excel protect and unprotect workbook VBA
我有一個工作簿,其中包含幾個(查找)選項卡,但我不希望任何用戶都可以取消隱藏。 但是,有一個選項卡包含我希望管理員用戶能夠看到的管理員信息。 我有一個按鈕和宏,在取消隱藏此選項卡之前會提示您輸入管理員密碼,但是如果我保護工作簿結構(以便其他用戶無法訪問隱藏的選項卡),則vba會失敗。 有沒有辦法從admin宏中保護/取消保護工作簿? 我已經嘗試了ActiveWorkbook.Unprotect
, ActiveWorkbook.Protect
和ActiveWorkbook.ProtectStructure
各種組合都無濟於事-都在admin宏和WorkbookOpen中。 我最常遇到的錯誤消息是即使在代碼的頂部出現ActiveWorkbook.Unprotect
之后,也仍然顯示“無法分配給只讀屬性”。 有誰知道如何解決這個問題? 我真的不想讓所有選項卡保持打開狀態,而無需在管理員工作表本身上添加第二個密碼即可-笨拙!
不必保護整個工作簿,而是將要隱藏的工作表的Visible
屬性設置為xlSheetVeryHidden
您可以在VBA編輯器的屬性窗口中手動執行此操作。 現在,這些工作表將不會顯示在“ Unhide…
對話框中。 您的宏可以將僅管理員工作表的可見性從xlSheetVeryHidden
為xlSheetVisible
並返回。
就其本身而言,這不能保護您的工作簿免受知道如何訪問VBA編輯器和屬性的用戶的影響,但是,如果您需要這樣做,似乎可以對快速的Web搜索找到很多答案-這可能取決於您的版本Excel。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.