如何在单击 ActiveX 控件的按钮时调用用 Excel 编写的模块

如何在单击 ActiveX 控件的按钮时调用用 Excel 编写的模块

如何通过单击工作表中的 ActiveX 控件来调用用 Excel 编写的模块?

答案1

你问的是什么并不完全清楚,但我知道这是你的问题:

您有一个在单击事件上运行的 ActiveX 控件。此控件的 VBA 仅通过按钮单击来调用,不能从任何其他子程序调用,但您希望能够从另一个模块调用此代码。

我不相信你能做到这一点,但有更好的方法可以解决这个问题。将 ActiveX 控件的代码放在模块中的新 Sub 中。然后用以下内容替换按钮单击事件的代码:

Private Sub CommandButton1_Click()
Call NewSub
End Sub

你的新 Sub 的名字在哪里NewSub?这应该可以让你做你想做的事。

答案2

ActiveX 控件的代码(例如工作表上的 button_click)可以从其他子程序调用,甚至在其他模块中调用。只需使用关键字“Public”而不是“Private”来描述 ActiveX 控件子程序即可。然后使用诸如 之类的语句调用该子程序Call Sheets(mySheetName).myButtonName_Click

答案3

要从 SHeet1 调用位于 ThisWorkbook 中的子例程:请执行以下操作:调用 ThisWorkbook.ParseText

其中定义:Public Sub ParseText()

相关内容