【问题标题】:How to check button is clicked in vba如何检查在vba中单击按钮
【发布时间】:2017-09-26 04:10:18
【问题描述】:

我想检查我的用户表单中的按钮是否被点击,我可以知道我该怎么做吗?我的最终目标是获得按钮被点击的次数。这是代码中的东西,我输入了。谢谢您的帮助。

 If CommandButton1_Click = True Then 
 x = x + 1 
 End If 

【问题讨论】:

  • 默认情况下所有按钮点击。当您单击一个按钮时,附加的宏将启动,然后该按钮将返回到其默认位置 not 被按下/单击。这些按钮将只有不到一秒钟的clicked 状态(以启动附加的宏)。之后他们立即再次进入未点击状态。也许您正在寻找其他控件,例如复选框或选项按钮?这些可以有其他状态,并且可以保持一段时间。

标签: excel vba button userform


【解决方案1】:

每次单击按钮时,都会调用 Button_Click() 子程序。每次调用该函数时,您都可以使用单元格或全局变量(取决于您想要做什么)来递增。

例如你可以这样做:

Option Explicit

Private Sub CommandButton1_Click()
    Module1.x = Module1.x + 1
End Sub

在 Module1 上你有:

Option Explicit

Public x As Integer

编辑1:

我添加了另一个按钮,并在单击第一个按钮(变量 x)时显示一个消息框:

Private Sub CommandButton2_Click()
    MsgBox Module1.x
End Sub

你的项目应该是这样的:

【讨论】:

  • 请问我在工作表和模块上编写代码时有什么区别?
  • 没有区别!这仅取决于您的按钮在哪里。如果您像我一样将它们放在工作表中,那么您必须将 button_click 代码放在 vba 编辑器中的该工作表中。
  • 我更改了图片以让您了解用户表单的外观!它做同样的事情!请记住,每次重新启动工作簿时变量 x 都会重新启动(不保存值)
猜你喜欢
  • 2013-07-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-11
  • 1970-01-01
  • 2019-04-13
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多