Страница: 1 |
Страница: 1 |
Вопрос: Добавление в ListBox
Добавлено: 26.09.07 22:14
Автор вопроса:
Nytrogen
На этот раз мне надо добавить значение в ListBox в пользовательской форме. Всё бы ничего, да только в этом списке 5 колонок. И у меня возникают следующие вопросы:
1)Можно ли организовать такое добавление при помощи метода ListBoxName.AddItem "..."?
2)Можно ли сразу записать в список целый двухмерный массив?
3)Можно ли как-нибудь задать заголовки столбцов списка, не ссылаясь на диапазон данных?
Ответы
Всего ответов: 5
Номер ответа: 1
Автор ответа: HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #1
Добавлено: 27.09.07 12:11
Использовать ListView
Номер ответа: 2
Автор ответа: Дмит
Вопросов: 11
Ответов: 160
Web-сайт:
Профиль | | #2
Добавлено: 27.09.07 22:19
1.
ListBox1.AddItem "в первую колонку"
ListBox1.List(ListBox1.ListCount - 1, 1) = "во вторую"
2.
Dim Data
Data = Range("A1:b5"'формировать можно и по другому
ListBox1.List = Data
3.
нет
Номер ответа: 3
Автор ответа: Nytrogen
Вопросов: 18
Ответов: 186
Профиль | | #3
Добавлено: 27.09.07 22:47
Ага, так вот зачем нужен второй параметр метода List! Спасибо.
А вот с присвоением двухмерного массива списка у меня всё равно проблемы. То есть можно написать нечто следующее:
Dim dataList As String(1 To 5, 1 To 2)
Sub FillTheList()
dataList(1, 1) = "1"
dataList(1, 2) = "String1"
dataList(2, 1) = "2"
dataList(2, 2) = "String2"
dataList(3, 1) = "3"
dataList(3, 2) = "String3"
dataList(4, 1) = "4"
dataList(4, 2) = "String4"
dataList(5, 1) = "5"
dataList(5, 2) = "String5"
UserForm.List1.List = dataList
End Sub
Я так понимаю, что у списка в форме должно быть для этого 2 колонки?
Номер ответа: 4
Автор ответа: Дмит
Вопросов: 11
Ответов: 160
Web-сайт:
Профиль | | #4
Добавлено: 27.09.07 23:22
1.
Dim dataList(1 To 5, 1 To 2) As String
2.
List1.ColumnCount = 2
List1.ColumnWidths = "50 pt;50 pt"
обычно 2. выставляю в конструкторе
Номер ответа: 5
Автор ответа: Nytrogen
Вопросов: 18
Ответов: 186
Профиль | | #5
Добавлено: 28.09.07 22:41
Ок, спасибо.
Да, я и правда описАлся. Массив надо так объявлять:
Dim dataList(1 To 5, 1 To 2) As String