Listbox vba excel примеры
Поддержка и обратная связь Support and feedback
Заполнение ListBox данными с помощью кода VBA Excel. Добавление значений в список методом AddItem, с помощью свойств List и RowSource. Примеры.
В примерах используется событие пользовательской формы UserForm_Initialize, реализуемое в модуле формы. Это очень удобно при тестировании, когда запуск формы или кода приводит к одному результату. Кроме того, из модуля формы обращаться к форме можно с помощью ключевого слова «Me».
Создайте в редакторе VBA Excel пользовательскую форму с любым именем и разместите на ней список с именем ListBox1. Вставляйте в модуль формы код примера, запускайте код или форму и смотрите результат.
Чтобы запустить форму, фокус должен быть на ее проекте или на одном из ее элементов управления. Чтобы запустить код, курсор должен быть в одной из его строк. Запускается код или форма нажатием клавиши «F5» или треугольной кнопки «Run Sub/UserForm»:
Listbox vba excel примеры
@VeBAxceL в Вашем примере (v.LI_Listbox Scroll x64 and x86) если прокрутить в самый низ списка и не двигать мышкой, вверх уже не поднимается! Только если подвигать мышкой снова начинает работать! Win10x64, Excel2019x64! Это только у меня такой прикол?
Работа со списками в Visual Basic
Приведённые практические работы по программированию могут быть использованы при изучении элементов выбора Visual Basic. Списки целесообразно изучать после знакомства с переключателями (OptionButton) и флажками (CheckBox).
При объяснении нового материала удобно использовать распечатки с изложением теоретического материала и примерами программ, которые выдаются каждому студенту (ученику), либо методические пособия (мы используем авторское пособие “Практикум по решению задач в среде Visual Basic”, часть 1, 2).
Приведённые практические работы рассчитаны на 3 занятия по 2 часа. Задания самостоятельной работы можно использовать в качестве домашних заданий.
Свойство Style задаёт внешний вид комбинированного списка (по умолчанию оно равно 0 — элемент ComboBox отображается в виде текстового поля со стрелкой справа, позволяющей развернуть весь список и выбрать требуемое значение). Если Style = 1, то постоянно отображается весь список (или список с полосой прокрутки).
0 — Dropdown Combo (раскрывающийся комбинированный список);
Для добавления нового элемента в список используется метод AddItem.
Пример: Combo1.AddItem “Пение” — добавить в список Combo1 слово Пение.
Добавляемые в список элементы имеют тип String; [index] — порядковый номер в списке, под которым будет находиться новый элемент (необязательный параметр).
Добавить элементы в комбинированный список можно также на этапе разработки с помощью свойства List. Для добавления очередного элемента в список нужно ввести этот элемент в свойстве List и нажать комбинацию клавиш Ctrl + Enter.
Данный элемент применяется в том случае, когда пользователю необходимо выбрать один элемент из имеющегося списка для выполнения определенных действий. Объекты ListBox используются обычно в сочетании с управляющими кнопками, которые позволяют обрабатывать элементы списка (добавлять, удалять и т. д.).
В отличие от ComboBox список ListBox можно создать многоколончатым и осуществлять выбор нескольких элементов одновременно.
- щелчок мыши при нажатой клавише Shift позволяет выделить несколько подряд расположенных элементов;
- щелчок мыши при нажатой клавише Ctrl даёт возможность выделять группу несмежных элементов списка.
0 — одноколончатый список с вертикальной прокруткой;
1 — одноколончатый список с горизонтальной прокруткой;
1 -Simple (простой множественный выбор — щелчок мыши или нажатие Пробел выделяет очередной элемент или снимает выделение);
Private Sub List1_DblClick() ‘перенести из списка в зачёт
Private Sub List2_DblClick() ‘перенести назад в Список из Зачёт
Private Sub List3_DblClick() ‘перенести назад в список из н/а
Private Sub Command1_Click() ‘добавить в список из текст. поля
- Добавьте в проект список оценок (2, 3, 4, 5) – List4.
- Измените проект таким образом, чтобы можно было добавлять в результаты фамилию и оценку ученика.
- Создайте кнопку “Очистить результаты”.
Задание: создать проект для проверки знания иностранных слов (англо-русский и русско-английский переводчик).
- Комбинированные списки Combo1 и Combo2 – для хранения русских и английских слов. Индексы русских слов в списке должны соответствовать индексам соответствующих им английских слов.
- Текстовое поле Text1 — для вывода случайного слова из списка, которое необходимо перевести.
- Текстовое поле Text2 — для вывода комментария “Верно” или “Неверно”.
- Текстовые поля Text3, Text4 — для вывода количества вопросов и верных ответов.
- Таймер Timer1 – для временной задержки при выводе очередного вопроса.
- Image1 – для вывода рисунка, соответствующего слову.
- Элемент MMControl1 — для воспроизведения звука.
Рисунки к проекту сохраните в папке с проектом в порядке следования слов в списке Combo1:
Для определения имени файла рисунка в проекте используем переменную Path:
Функция Mid используется для того, чтобы убрать пробел перед числом в имени файла, т.к. функция Str(n) для положительного числа формирует строку с пробелом перед числом. Таким образом, получаем неверное имя файла Ris 0.jpg, вместо Ris0.jpg.
1) В процедуре загрузки формы нужно заполнить списки русских и английских слов.
‘n – индекс слова в списке; k – количество верных ответов; z – кол. вопросов; p – признак направления перевода; Path – путь к файлу с рисунком на диске
2) При выборе кнопки “Перевод рус/англ” должно появляться русское слово. Для данного слова нужно найти перевод в списке английских слов. Список русских слов при этом должен скрываться.
3) В процедуре таймера случайным образом определяем индекс слова в списке слов. Если p=1, то было выбрано направление перевода рус/англ., поэтому слово выбирается из списка русских слов Combo1.
n = Int(Rnd * 4) ‘случайный выбор индекса слова в списке слов
4) Для выбора перевода заданного русского слова пользователь делает щелчок по списку английских слов. Если индекс исходного русского слова n совпадает с индексом слова-перевода, выбранного пользователем, то ответ верный.
- Создайте процедуру кнопки “Перевод англ/рус”.
- Добавьте кнопку Сброс.
- Подберите 2 звуковых файла для подтверждения верного и неверного ответа, подключите эти файлы к проекту.
- Создайте заставку к проекту.
Свойства шрифта в метке задаются следующими командами:
Label1.Font.Underline = True – установить подчёркнутый шрифт
Label1.Font = Combo1.Text – применить к метке тип шрифта, выбранный в комбинированном списке 1
Label1.Font.Size = Combo1.Text — применить к метке размер шрифта, выбранный в комбинированном списке 1
[expert_bq id=»1570″]Все четко и ясно, канал очень интересный, учу по Вашим видео VBA, только вот хотелось бы узнать а Combobox его обязательно ли вызывать. Если же вы хотите что-то уточнить, обращайтесь ко мне![/expert_bq] @VeBAxceL в Вашем примере (v.LI_Listbox Scroll x64 and x86) если прокрутить в самый низ списка и не двигать мышкой, вверх уже не поднимается! Только если подвигать мышкой снова начинает работать! Win10x64, Excel2019x64! Это только у меня такой прикол?105- VBA EXCEL. Как включить прокрутку в Listbox (Combobox) колёсиком мышки
Свойство RowSource позволяет загрузить в элемент управления ListBox значения из диапазона ячеек на рабочем листе Excel. Задать адрес диапазона свойству RowSource можно как в ходе выполнения кода VBA, так и в окне Properties элемента управления ListBox.