У меня есть документ Excel, который мне нужно развернуть без VBA для моих коллег. У меня есть Combobox на одном из его листов, который я хочу заполнить динамически. Содержимое комбинированного списка является результатом запроса данных из другой рабочей книги, поэтому число строк может варьироваться.
Я создал временную подпрограмму только для присвоения ListFillRange. Я добавил все различные попытки, которые я до сих пор пытался безуспешно ...
Sub SetListFillRange()
ComboBox1.ListFillRange = "=MyQueryTable[SomeColumn]"
ComboBox1.ListFillRange = "=TestName" 'A named Range pointing to MyQueryTable[SomeColumn]
ComboBox1.ListFillRange = "=[TestName]"
ComboBox1.ListFillRange = "='SheetX'!A2:INDEX('SheetX'!$A:$A,COUNTA('SheetX'!$A:$A))"
ComboBox1.ListFillRange = "=OFFSET('SheetX'!A2,0,0,COUNTA('SheetX'!$A:$A) - 1,1)"
End Sub
Смысл, почему я пытаюсь использовать ActiveX ComboBox, - это функция автозаполнения, которая отсутствует в форме ComboBox, которая приходит с Excel (на самом деле вы не можете вводить текст вообще ...).