我有一个组合框,其值可以是A型或B型。对于键入它的用户来说并不重要,但值来自不同的表。
我不能在不同的工作表中使用Union作为两个范围,所以我不能将联合设置为行数源。
是否有办法在组合框中同时使用这两个范围,而不将它们放在同一张纸上?
答案 0 :(得分:3)
由于您使用了术语RowSource,我猜这是UserForm上的ComboBox。如果是这样,请使用.List属性,如下所示:
Private Sub UserForm_Initialize()
Me.ComboBox1.List = Array(Sheets("Sheet1").Range("A1").Text, Sheets("Sheet2").Range("A1").Text)
End Sub
稍微更具可读性:
Private Sub UserForm_Initialize()
Me.ComboBox1.List = Array(Sheets("Sheet1").Range("A1").Text, _
Sheets("Sheet2").Range("A1").Text)
End Sub
答案 1 :(得分:2)
我解决了它循环遍历范围并单独添加每个项目。
Dim rango1 As Range, rango2 As Range
Set rango1 = Sheets("1").Range("A1:A100")
Set rango2 = Sheets("2").Range("A1:A100")
For Each cell In rango1
ComboBox1.AddItem cell.Text
Next
For Each cell In rango2
ComboBox1.AddItem cell.Text
Next