2015-06-19 1 views
1

У меня есть пользовательская форма с OK и Cancel кнопка и список. Предполагается, что он заполняется с использованием этого кода:Userform listbox rowsource не заполняется

Private Sub UserForm_Initialize() 

Me.StartUpPosition = 0 
Me.Top = Application.Top + (Application.Height/2) - (Me.Height/2) 
Me.Left = Application.Left + (Application.Width/2) - (Me.Width/2) 

With Me.ListBox1 
    .RowSource = "" 
    .ColumnCount = 7 
    .ColumnWidths = "80;100;20;1;20;1;1000" 
    .RowSource = Sheets("BOH Database").Range("H9:N14").Address 
    ' .RowSource = Sheets("BOH Database").Range("H9:N" & Sheets("BOH Database").Range("a65536").End(xlUp).Row - 1).Address 
End With 

End Sub 

Ни операторы RowSource не работают. Я попробовал очистить RowSource, прежде чем заполнять его снова. Что я делаю не так?

EDIT: Я добавил код я в настоящее время здесь, как это не показывает должным образом в комментариях: Я использую этот код, основанный на вашем, и это сбой лист:

With Me.ListBox1 
.ColumnCount = 7 
.ColumnWidths = "80;100;20;1;20;1;1000" 
.RowSource = "'" & Sheets("BOH Database").Name & "'!" & Sheets("BOH Database") _ 
    .Range("H9:N" & Sheets("BOH Database").Range("a65536").End(xlUp).Row - 1).Address 
End With 

ответ

1

Это неправильный способ сделать это. Синтаксис

ListBox1.RowSource = "SheetName!RangeAddress" 

Так что, если ваше имя листа сказать Sheet1 то выше становится

ListBox1.RowSource = "Sheet1!H9:N14" 

Кроме того, поскольку ваше имя листа имеет место, вам придется добавить ' до и после того, как имя листа ,

Попробуйте

ListBox1.RowSource = "'BOH Database'!H9:N14" 

Или в пути ...

With Sheets("BOH Database") 
    ListBox1.RowSource = "'" & .Name & "'!" & .Range("H9:N14").Address 
End With 
+0

Я использую этот код, основанный на вашем, и это сбой лист: С Me.ListBox1 .ColumnCount = 7 .ColumnWidths = "80; 100; 20; 1; 20; 1; 1000" .RowSource = "'" & Таблицы ("База данных BOH"). Имя & "'!" & Range («H9: N» & Sheets («База данных BOH»). Диапазон («a65536»). Конец (xlUp) .Row - 1) .Address Завершить – user2967539

+0

У вас все еще проблема? –

+0

Да, как указано выше, лист рушится на строке .RowSource – user2967539

 Смежные вопросы

  • Нет связанных вопросов^_^