要實現只有管理者權限才能開啟工作表索引標籤的功能,需要進一步的控制和安全設定。以下是一個示例程式碼,演示如何檢查使用者權限並要求密碼:
Sub ToggleWorkbookTabs()
    ' 檢查使用者權限
    If Not CheckAdminAccess() Then
        ' 若非管理者權限,要求密碼
        Dim password As String
        password = InputBox("請輸入管理者密碼:")
        
        ' 驗證密碼
        If password = "your_password" Then
            ' 開啟工作表索引標籤
            ActiveWindow.DisplayWorkbookTabs = True
        Else
            MsgBox "無效的密碼,無法開啟工作表索引標籤。"
        End If
    Else
        ' 若為管理者權限,開啟工作表索引標籤
        ActiveWindow.DisplayWorkbookTabs = True
    End If
End Sub
Function CheckAdminAccess() As Boolean
    ' 檢查使用者是否具有管理者權限
    ' 在此可以根據需要自行實作檢查邏輯
    ' 若使用Windows認證,可以使用以下程式碼
    ' Return My.User.IsInRole("Administrators")
    ' 若使用自訂的使用者權限系統,則需根據系統設計進行相應的檢查
    ' 假設此處直接回傳False,表示非管理者權限
    Return False
End Function
以下是一個示例程式碼,演示如何設置工作表保護和解鎖
Sub ProtectWorksheet()
    Dim password As String
    password = InputBox("請輸入工作表密碼:")
    ' 設置工作表保護
    ActiveSheet.Protect Password:=password, UserInterfaceOnly:=True
    ' 隱藏工作表索引標籤
    ActiveWindow.DisplayWorkbookTabs = False
End Sub
Sub UnprotectWorksheet()
    Dim password As String
    password = InputBox("請輸入工作表密碼:")
    ' 解鎖工作表
    ActiveSheet.Unprotect Password:=password
    ' 顯示工作表索引標籤
    ActiveWindow.DisplayWorkbookTabs = True
End Sub
在上述示例中,ProtectWorksheet子程序用於保護工作表並隱藏工作表索引標籤,而UnprotectWorksheet子程序用於解鎖工作表並顯示工作表索引標籤。使用這些子程序,你可以在需要時為工作表設置密碼保護並控制工作表的顯示。
想問, 這個 your_password 只要開這個 vba 就可以看到, 對嗎?
your_password 是你可以自定義的
我是剛入VB的初學者,
EXCEL檔VB程式若設定管理者權限密碼後,
從EXCEL選項中也無法勾選 『顯示工作表索引標籤』
以避免其他人員自行開啟工作表索引標籤 (只有管理者解除密碼才可)
剛用示例程式碼1, 出現編譯錯誤;語法錯誤
游標停在 Return False....
還請rain_yu大師指導!
前面問題可能敘述說明或表達時不是很明確 ,
茲截圖說明如下提供 給大師您參考 ~
直接貼上當然錯誤阿,註解只是方便你知道要寫甚麼而已,
你還是要將程式補上,如果你不懂你應該開始上網查寫法。
我已經把流程和註解給你了。
你至少要寫到一定程度,如果還是錯誤再來提出問題。
按照你得新邏輯,我大概整理了一下邏輯:
"
excel工作表頁籤,除首頁外預設全部隱藏,
首頁上要有按鈕 當點選按鈕時,跳出對話框詢問是否顯示工作表頁籤,選是後 需輸入密碼"1234" ,正確時顯示頁籤。
"
你再按照這方式寫看看有沒有符合需求。
Private Sub CommandButton1_Click()
    Dim password As String
    password = InputBox("請輸入密碼", "輸入密碼")
    
    If password = "1234" Then
        Sheets.Visible = True
    Else
        MsgBox "密碼不正確!"
    End If
End Sub
這樣,當你點擊首頁上的按鈕並輸入正確的密碼時,隱藏的工作表頁籤將顯示出來。請確保在保存文件時啟用了宏,以便 VBA 代碼可以正常運行。