在我的工作簿中,我有一个CommandButton(Button1),可以打开一个用户窗体。在用户窗体中,我还有两个CommandButton(保存/取消)。
在Button1中,我有一个点击计数器。因此,如果第一次单击Button1,它将显示UserForm1,第二次显示UserForm2。 (用户窗体相同)
我现在的问题是,如果我在Userform1中按下“取消”按钮,我希望计数器恢复为0。
不幸的是,我在搜索过程中找不到解决方案,而且我也不知道如何解决这个问题。
这是我的代码:
' Button in Worksheet
Private Sub Button1_Click()
Static cnt As Long
cnt = cnt + 1
If cnt = 1 Then
[UserForm1].Show
ElseIf cnt = 2 Then
[UserForm2].Show
End If
If ActiveControl.UserForm1.Cancel_Button = True Then
cnt = 0
End If
End Sub
' Code in UserForm1
Private Sub Save_Button_Click()
Call Save_Form_in_Sheet
[UserForm1].Hide
End Sub
Private Sub Cancel_Button_Click()
[UserForm1].Hide
End Sub
我知道这部分是错误的:
If ActiveControl.UserForm1.Cancel_Button = True Then
cnt = 0
End If
我如何编写代码,如果单击了“取消”按钮,计数器又回到0?
编辑:
可以找到解决方案。 我不得不将代码更改为此:
If UserForm1.ActiveControl.Name = "Cancel_Button" Then
cnt = 0
End If