如何在 excel 中使用 VBA 创建一个新的 ListBox,然后通过数组将项目添加到不同的列?
我的 ListBox 应用程序是用多列中的数据填充它,并让它出现在用户最后单击的位置。我只需要创建和添加到多列列表框的帮助。
我能够添加新列表框的唯一方法是:
ActiveSheet.ListBoxes.Add(400, 200, 100, 100).Select
With Selection
.name = "ListBox1"
End With
通过这种方式,我创建了框并设置了它的名称,以便以后可以使用以下方法引用它:
ActiveSheet.Shapes.Range(Array("ListBox1")).Select
从这里我会尝试添加一个二维数组,认为它将在两个单独的列中填充列表框:
Dim strArray(2, 1) As Variant
strArray(0, 0) = "Value 1"
strArray(0, 1) = "Value 2"
strArray(1, 0) = "Value 3"
strArray(1, 1) = "Value 4"
strArray(2, 0) = "Value 5"
strArray(2, 1) = "Value 6"
With Selection
.AddItem strArray
End With
我研究过有一个名为“.ColumnCount”的设置,但是当我尝试使用此设置时,它会产生“运行时错误'438':”:
With Selection
.ColumnCount = 2
End With
目前,我试图避免在使用此 ListBox 时使用 UserForm,但如果这是执行此过程的“更好”方式,请告诉我。