在表單中,通過代碼動態生成ActiveX 控制元件,然后發現模塊中宣告和初始化的公有變數,都清零了;而且,通過代碼動態洗掉ActiveX 控制元件,公有變數也會清零,也就是說,不管是通過代碼創建還是洗掉ActiveX 控制元件,代碼中的其它變數都會清零,這是什么原因,怎么解決?
Sub InsertComboBox()
Dim ole As OLEObject
Dim ctl As MSForms.ComboBox
Sheet2.Select
Cells(3, 5).Select
' 插入復合框
Set ole =Sheet2.OLEObjects.Add(ClassType:="Forms.ComboBox.1")
' 命名
ole.Name ="Combo"
Set ctl = ole.Object
ctl.Name = "Combo"
ctl.AddItem "Item1"
ctl.AddItem "Item2"
ctl.AddItem "Item3"
ctl.ListIndex = 0 ' 第一個專案的ListIndex是0
' 添加Click事件,此處省略
End Sub
uj5u.com熱心網友回復:
試試:Sheet2.OLEObjects.Add ClassType:="Forms.ComboBox.1"
Set ole =Sheet2.OLEObjects("ComboBox1)
uj5u.com熱心網友回復:
Dim ole As OLEObjectDim ctl As MSForms.ComboBox
寫在函式內?
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/109515.html
標籤:VBA
