Listbox

Программирование на Visual Basic for Applications
Pups
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 04.10.2003 (Сб) 16:53

Listbox

Сообщение Pups » 04.10.2003 (Сб) 17:02

Здраствуйте у меня такая проблемка. Я создаю диалог в excel на нем помещаю listbox, но когда я бытаюсь заполнить его у меня выдается ошибка, object doesn't support this property or metod.
Записывать пытаюсь так DialogSheets("workarchiv").ListBox(1).List(1)="hello"

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 05.10.2003 (Вс) 7:03

Это он контрол найти не может. ListBox - это не коллекция. К контролам на листе нужно обращаться через Shapes("Name") (это если контрол с панели инструментов "Формы") или прямо по имени (если с панели инструментов "Элементы управления"). Во втором случае контрол будет доступен в списке объектов модуля класса листа, на котором расположен.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Pups
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 04.10.2003 (Сб) 16:53

НЕ получается

Сообщение Pups » 05.10.2003 (Вс) 19:13

Простите возможно я не понял ответа я не большой в специалис в VBA, но когда я создаю на том же диалоге OptionButtons и пытаюсь менять его значение таким образом DialogSheets("workarchiv").OptionButtons(1).Value = 1 то все работает, также получается обращаться к etitboxes. Простите если я чего то не допонимаю

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 06.10.2003 (Пн) 5:23

Чёрт, простегал. :)
Свойства у листа есть, просто они скрыты.
В данном случае это проперть ListBoxes(i)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Vitaly1
Брехман
Брехман
 
Сообщения: 1578
Зарегистрирован: 30.12.2002 (Пн) 16:35
Откуда: Russia, Mosсow

Сообщение Vitaly1 » 06.10.2003 (Пн) 12:43

наверно так:

Код: Выделить всё
'очистка
DialogSheets("workarchiv").ListBox(1).clear
'добавление строки тексьа
DialogSheets("workarchiv").ListBox(1).additem "Hello"
возможно, ты в несуществующую ячеййку обращаешься.


может быть еще и так, а то я никогда не слышал, что б в VBA массив элементов был:
Код: Выделить всё
'очистка
DialogSheets("workarchiv").ListBox1.clear
'добавление строки тексьа
DialogSheets("workarchiv").ListBox1.additem "Hello"

Pups
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 04.10.2003 (Сб) 16:53

Сообщение Pups » 06.10.2003 (Пн) 21:07

Спосибо ребята, но мне завтра здавать её пришлось сделать через userform, но все равно большое спосибо и кстати так каквы говорите все равно не работает. Премного благодорю


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 95

    TopList