问题描述
我正在尝试在工作表上创建ActiveX TreeView控件并通过代码命名。
有趣的是,当我复制表格时,TreeView控件不会随它一起复制,因此我的解决方法是仅通过代码插入控件。我挖了一下,找不到关于用代码创建它的任何信息。
有人知道该怎么做吗?
解决方法
请尝试下一段代码。仅用于指导您使用该方法:
Sub AddTreeControl()
Dim sh As Worksheet,TrC As OLEObject,TC As Object
Set sh = ActiveSheet
Set TrC = sh.OLEObjects.Add(ClassType:="MSComctlLib.TreeCtrl.2",link:=False _,DisplayAsIcon:=False,left:=200,top:=70,width:=150,height:= _
200)
Set TC = TrC.Object
With TrC
.Name = "TreeControlX"
.Select
End With
With TC
.nodes.Add Key:="item 1",Text:="Parent 1"
.nodes.Add "item 1",tvwChild,Key:="one",Text:="ITEM 1,Child node 1"
.nodes.Add "item 1","two","ITEM 1,Child node 2"
.nodes.Add Key:="item 2",Text:=" Parent 2"
.nodes.Add Key:="item 3",Text:=" Parent 3"
End With
End Sub
,
感谢FaneDuru。
这是我想出的:
Sub Test()
'Create an ActiveX TreeView,assign dimensions,and name
With Sheets("Sheet1").OLEObjects.Add(ClassType:="MSComctlLib.TreeCtrl.2",_
Left:=55,Top:=450,Width:=330,Height:=400)
.Name = "InsertNameHere"
End With
End Sub