Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как более правильно заполнить ComboBox

3.7K
13 января 2005 года
blind7
56 / / 12.01.2005
Вернее суть такова:
Есть список из 37 пунктов которые должны присутствовать в ComboBox и со временем они будут добавляться и удаляться из списка. Отсюда вопрос:
Как правильно организовать заполнение? Вписывать каждый пункт внутрь
Кусок кода
Dim lst As Variant
lst = Array("Пункт1", "Пункт2", "ПунктN")
OtdelenieCheki.List = lst

Или каким то образом вписывать в столбец или ячейку и брать их потом оттуда и если 2 вариант более верен то как это возможно организовать.
459
13 января 2005 года
gacol
273 / / 12.02.2003
Цитата:
Originally posted by blind7
Вернее суть такова:
Есть список из 37 пунктов которые должны присутствовать в ComboBox и со временем они будут добавляться и удаляться из списка. Отсюда вопрос:
Как правильно организовать заполнение? Вписывать каждый пункт внутрь
Кусок кода
Dim lst As Variant
lst = Array("Пункт1", "Пункт2", "ПунктN")
OtdelenieCheki.List = lst

Или каким то образом вписывать в столбец или ячейку и брать их потом оттуда и если 2 вариант более верен то как это возможно организовать.



У ComboBox (Excel) в свойствах есть параметр ListFillRange
задаешь его, например, A1:A10.

275
13 января 2005 года
pashulka
985 / / 19.09.2004
Список можно также заполнить, добавляя элементы списка по одному :

OtdelenieCheki.AddItem "Пункт1"
OtdelenieCheki.AddItem "Пункт2"
OtdelenieCheki.AddItem "Пункт3"

Удалить определённый элемент списка можно так :

OtdelenieCheki.RemoveItem 2

Так как по умолчанию все элементы списка начинаются с 0, то приведённая инструкция удалит "Пункт3"

Что касается связи ComboBox c ячейками рабочего листа, то :
Если ComboBox расположен на UserForm, то для связи с определёнными ячейками Вам понадобится свойство RowSource.
После присвоения определённого адреса свойству RowSource вручную, применение свойства List или метода AddItem, RemoveItem вызовет ошибку.

Если Вам необходимо чтобы ComboBox отображал содержимое ячеек, то при этом Вы имели возможность удалять некоторые пункты, то воспользуйтесь свойством List :

bg = Range("A1:A10")
'bg = ActiveSheet.Range("A1:A10")
OtdelenieCheki.List = bg
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог