返回列表 上一主題 發帖

[發問] 如何禁止使用VBA按鈕

回復 1# missbb


   按鈕必須是ActiveX是控制項
其屬性為.Enabled,可控制可使用或不可使用
例如:
CommandButton1.Enabled = False'為不可使用
CommandButton1.Enabled =True'為可使用

當然你必須寫一巨集,利用密碼來掌控可否使用
在 Workbook_Open關閉使用如下
Private Sub Workbook_Open()
Worksheets("工作表1").CommandButton1.Enabled = False
End Sub
下再利用巨集來啟用它
Private Sub pas_Click()
aa = InputBox("請輸入密碼")
pass = "12345"
If aa = pass Then
    CommandButton1.Enabled = False
End If
End Sub

TOP

回復 4# missbb


    If aa = pass Then
    CommandButton1.Enabled = False<<這裡應該為True才對,不好意思。

TOP

回復 6# missbb


    aa = InputBox("請輸入密碼")
pass = "12345"
If aa = pass Then
    CommandButton1.Enabled = True
Else
    CommandButton1.Enabled = False
    MsgBox "錯誤輸入"
    Exit Sub
End If

TOP

回復 9# missbb


    你應該看清楚2樓的解說,
CommandButton1.Enabled = False'為不可使用,會變成灰色的
CommandButton1.Enabled =True'為可使用,會成為正常可使用情況
,而2樓的例子
在 Workbook_Open時,會關閉按鈕的使用,直到執行pas程式時方可解開按鈕的使用
Private Sub Workbook_Open()
Worksheets("工作表1").CommandButton1.Enabled = False
End Sub
下再利用巨集來啟用它
Private Sub pas_Click()
  aa = InputBox("請輸入密碼")
pass = "12345"
If aa = pass Then
    CommandButton1.Enabled = True'密碼對時,則CommandButton1按鈕變可以使用,
Else
    CommandButton1.Enabled = False'密碼錯誤時,則CommandButton1則維持不組使用,按鈕為灰色的
    MsgBox "錯誤輸入"
    Exit Sub'密碼錯誤時跳出程式,甚至不能執行下面程式
End If

...
...
...

End Sub
這程式例子,是說明,當打開檔案時,CommandButton1按鈕為不可以使用,
直到使用者,按下pas 按鈕時,密碼對時,才可以使用CommandButton1按鈕,繼續可以使用其他巨集程式否則為保護狀態!如下圖:
開啟檔案時,CommandButton1按鈕為不何使用狀態

下圖則為,密碼輸入對後可使用狀態

TOP

        靜思自在 : 難行能行,難捨能捨,難為能為,才能昇華自我的人格。
返回列表 上一主題