小编Sun*_*ath的帖子

处理在运行时创建的OLEObject CommandButtons的事件

我现在一直在努力解决这个问题......我想做一些非常简单的事情.我想在运行时创建多个命令按钮,然后使用一个过程处理这些命令按钮的事件.所以我构建了一个"withevents"类来处理自动化,但我的代码不起作用.当我运行Test()时,会创建CommandButton,但是当我点击它时...没有消息框响应......我找不到错误..请任何帮助都会很棒!!

类cTest

Public WithEvents Button As MSForms.CommandButton

Public Sub Button_Click()
s = MsgBox("Hello", vbOKOnly)
End Sub
Run Code Online (Sandbox Code Playgroud)

第1单元

Public TestCollection As Collection

Sub Test()

Set TestCollection = New Collection
Dim Btn As CommandButton
Dim OLEBtnObj As cTest
Set OLEBtnObj = New cTest
Set Btn = Sheet1.OLEObjects.Add(ClassType:="Forms.CommandButton.1", link:=False,_ DisplayAsIcon:=False, Left:=368.25, Top:=51, Width:=44.25, Height:=24).Object
Set OLEBtnObj.Button = Btn
TestCollection.Add Item:=OLEBtnObj

End Sub
Run Code Online (Sandbox Code Playgroud)

events vba ole event-handling commandbutton

4
推荐指数
1
解决办法
6404
查看次数

标签 统计

commandbutton ×1

event-handling ×1

events ×1

ole ×1

vba ×1