2

我的问题基本上在这篇文章中得到了回答

但不是下面的类代码:

Sub CmdEvents_Click()
   MsgBox "Hello World"
End Sub

我需要运行这段代码(这只是一个示例,我想使用稍后在程序中单击的按钮的名称)

Sub CmdEvents_Click()
Dim mvCtrl As Control
Set mvCtrl = Me.ActiveControl
MsgBox mvCtrl.Name
End Sub

但是上面的代码无论如何都不会正确返回我刚刚在运行时在消息框中创建的按钮的名称。

它返回“Button 6”....我在我的工作簿中进行了搜索,但我什至没有这个名字。

实际上,我修改了上面链接中的原始代码,以从列表中获取所有按钮的名称。这样我可以修改列表,从而修改按钮的名称,或者如果我愿意的话。而这个 Button 6 甚至不存在于我的列表中。

我在我的代码中做了一些陷阱,显示了我用来从中获取按钮名称的变量的消息框,这是正确的,它带有我想在创建按钮之前为其命名的字符串。

4

1 回答 1

1

假设您关注了链接到的帖子,您的类实例已经包含一个CmdEvents引用单击按钮的变量,因此您可以使用

Msgbox CmdEvents.Name 

如果您的代码不同,发布相关部分会很有用,这样我们就可以看到发生了什么。

于 2014-04-10T16:00:32.163 回答