[英]Dynamic range in combobox list
我正在使用兩種方法在組合框行源中構建動態名稱列表。 首先,我使用:
與Sheet2
RateComboBox.RowSource =“'”&.Name&“'!” &.Range(“ b9”,.Range(“ c33”)。End(xlUp))。地址結尾為
控制源設置為工作表上的單元格,並且綁定的列為第1列,或者范圍b9:b33的范圍為數字1-25,列數為2,第二列列表名稱為(1-25)他們被添加。 在范圍C9:C33填滿之前,它一直很好用,這時下拉列表顯示一個偽造的列表,其中包含從B1開始的項目(文本)。 怎么了?
在第二種情況下,我使用:
Me.ComboBox1.RowSource = Worksheets(“ Form”)。Range(“ B8”,Range(“ B32”)。End(xlUp))。Address
其中在b8:B32范圍內添加了名稱。 控制源設置為工作表上的單元格,裝訂的列為第1列。同樣,它很好用,直到(列表)范圍已滿。 在這兩種情況下,我只希望列出組合框中的項目(名稱),因為它們是在這些范圍內添加的。 ??
對於這樣的第一部分:
If Len(.Range("c33").Value) Then
RateComboBox.RowSource = "'" & .Name & "'!B9:C33"
Else
RateComboBox.RowSource = "'" & .Name & "'!" & .Range("b9", .Range("c33").End(xlUp)).Address
End If
對於第二部分,它也一樣:
If Len(Range("B32").Value) Then
Me.ComboBox1.RowSource = Worksheets("Form").Range("B8:B32").Address
Else
Me.ComboBox1.RowSource = Worksheets("Form").Range("B8", Range("B32").End(xlUp)).Address
End If
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.