Listbox vba excel примеры
Поддержка и обратная связь Support and feedback
Заполнение ListBox данными с помощью кода VBA Excel. Добавление значений в список методом AddItem, с помощью свойств List и RowSource. Примеры.
В примерах используется событие пользовательской формы UserForm_Initialize, реализуемое в модуле формы. Это очень удобно при тестировании, когда запуск формы или кода приводит к одному результату. Кроме того, из модуля формы обращаться к форме можно с помощью ключевого слова «Me».
Создайте в редакторе VBA Excel пользовательскую форму с любым именем и разместите на ней список с именем ListBox1. Вставляйте в модуль формы код примера, запускайте код или форму и смотрите результат.
Чтобы запустить форму, фокус должен быть на ее проекте или на одном из ее элементов управления. Чтобы запустить код, курсор должен быть в одной из его строк. Запускается код или форма нажатием клавиши «F5» или треугольной кнопки «Run Sub/UserForm»:

Как открыть разработчик в excel. Режим конструктора и элементы ActiveX в VBA Excel. Раздел Элементы управления
В этой главе вы разработаете свой собственный элемент управления ActiveX — MyClock.ОСХ, который выполняет задачу вывода текущего времени. Когда программист помещает элемент управления MyClock.ОСХ в форму или в диалоговую панель, MyClock. ОСХ будет непрерывно отображать текущее время.
Значок инструмента MyClock отображает буквы ОСХ. Вам нужно настроить элемент управления MyClock таким образом, чтобы значок его инструмента представлял собой рисунок часов. Для настройки значка инструмента MyClock вы должны отредактировать растровое изображение IDB_MYCLOCK. Это изображение было создано Visual C++.
Чтобы вывести растровое изображение IDB_MYCLOCK в режиме проектирования, сделайте следующее:
1) Выберите закладку ResourceView в окне Project Workspace, раскройте пункт MyClock resources, раскройте пункт Bitmap и дважды щелкните на пункте IDB_MYCLOCK.
В ответ Visual C++ выведет растровое изображение IDB_MYCLOCK в режиме проектирования.
2) Используя визуальные инструменты Visual C++, замените растровое изображение IDB_MYCLOCK букв ОСХ на рисунок простейших часов (окружность и две линии в качестве стрелок).


VBA-Урок 12.2. Элементы управления (Controls)
- Щелкните на кнопке Add Function.
- В ответ Visual C++ добавит в класс CMyClockCtrl функцию-элемент ОпСreate().
- Щелкните на кнопке Edit Code в ClassWizard.
- В ответ Visual C++ откроет файл MyClockCtrl.cpp с функцией OnCreate() в режиме редактирования.
Даже если Вы не разработчик, возможно, захотите использовать в работе шаблоны документов, добавлять формы в Word, Excel или PowerPoint, настраивать работу приложений Office при помощи макросов или использовать настраиваемую форму в Outlook. Для всех этих задач требуется вкладка Разработчик (Developer), и в этой статье мы покажем, как сделать её доступной.
Кнопки опций (Option Buttons)
Пользователь может выбрать только одну кнопку-опцию на «группу» в отличие от чекбоксов.
Чтобы создать «группу», сначала вставьте Frame, а затем OptionButton :
Здесь вы можете посмотреть пример в готовом Excel файле: userform3.xls
Как только форма была отправлена, мы введем данные в ячейку, которая связана с названием колонки и row_value chosen.
Для того, чтобы знать какие опции были выбраны, мы могли бы сделать то же самое что и в предыдущем примере (с чекбоксами), но мы используем цикл, чтобы уменьшить размер кода.
Мы собираемся использовать цикл For Each , тип цикла, который мы еще до этого не рассматривали. Этот цикл позволяет выполнять инструкции для каждого объекта в «группе объектов»:
Сейчас эта форма вводит значение «Ячейка выбрана!» в ячейку, которая была выбрана.
Чтобы избежать баги, нам необходимо проверить , что пользователь выбрал правильно с двух наборов опций.
В этом примере, когда форма еще не завершена, кнопка «Подтверждение» («Confirm») появится в сером (будет деактивирована). Это не самое простое решение, но это хороший пример того, почему функции/процедуры является Полезные внутри формы (UserForm).
Измените текст и свойство Enabled , чтобы деактивировать кнопку.
В предыдущем коде мы использовали два For Each цикла, чтобы получить значение опционных кнопок (option buttons). Сейчас нам нужно использовать те же значения для кнопки «Подтверждение» («Confirm») и событие Click для десяти опций.
Для этого нам не нужно копировать циклы для каждого события, мы вызовем их через функцию.
Начнем с предыдущего кода и модифицируя его, мы достигнем этого результата:
Все что нам осталось сделать, это создать процедуру, которая проверяет , что кнопки опций были выбраны корректно (через вызов двух функций), и которые активируют эту кнопку когда нужно.
Опять же, проверка выполняется в отдельной процедуре, чтобы избежать копирования кода 10 раз для каждого события каждого опционной кнопки:
Здесь вы можете посмотреть пример в готовом Excel файле: userform3b.xls

Руководство по созданию ActiveX-контролов на C с помощью ATL / Хабр
VB5/CCE не позволяет создавать автономные приложения, но с ними можно работать в среде системы. Фактически такие приложения можно использовать только для отладки элементов управления и в целях обучения. При этом VB5/CCE обладает всеми интеллектуальными возможностями среды разработки VB 5.0 и позволяет использовать дополнительные продукты третьих фирм.