Что такое список в Excel VBA?
Окно списка - это один из инструментов пользовательской формы в VBA. Как подсказывает само название, список будет содержать весь список значений, данных пользователем. В поле списка VBA входит пользовательская форма. В этой статье мы увидим, как создать список и как хранить значения в списке в Excel VBA.
Поле списка - это поле, в котором могут храниться значения. Из этого списка элементов пользователь может выбрать элемент, показанный в списке.
Мы также можем нарисовать список в обычном листе Excel.
Как создать список в Excel?
Предположим, у вас есть список месяца в одном из листов Excel.
Для этого списка месяцев мы создадим список. Выполните следующие шаги, чтобы создать список в листе Excel:
Шаг 1: Перейдите на вкладку разработчика. Под разработчиком, вкладка Перейти к опции Вставка и под вставкой, опция Перейти к контролю формы, под управлением формы выберите Список.
Шаг 2: После выбора поля списка нарисуйте поле списка на листе Excel.
Шаг 3: Щелкните правой кнопкой мыши на вставленном списке и выберите « Управление форматами» .
Шаг 4: В разделе «Управление форматами» перейдите в « Управление» . Выберите диапазон ввода в качестве диапазона названий месяцев и задайте ссылку на ячейку D1, а затем нажмите « ОК» .
Шаг 5: У нас будет список месяца в списке.
Шаг 6: Выберите любой из элементов в списке и увидите изменение в ячейке D1.
Итак, мы получили 3 в результате в ячейке D1, потому что Мар - третий элемент в списке.
Как создать список в VBA?
Создать окно списка не так просто, как мы видели в приведенном выше примере, вам необходимо иметь значительные знания о макросах Excel VBA.
Вы можете скачать этот шаблон Excel со списком VBA здесь - Шаблон Excel со списком VBAОкно списка VBA - Пример № 1
Понимание списка VBA.
Вы можете рассмотреть следующий пример для лучшего понимания VBA List Box.
Выполните следующие шаги, чтобы создать список в VBA.
Шаг 1: В окне Visual Basic Вставьте форму пользователя.
Шаг 2: Как только вы вставите форму пользователя, вы увидите панель инструментов вместе с формой пользователя.
Шаг 3: В этом наборе инструментов выберите Список .
Шаг 4: Нарисуйте этот список на форме пользователя.
Шаг 5: После вставки списка, дайте правильное имя этому списку под окном Свойства.
Шаг 6: Прокрутите вниз и найдите «Источник строки». В этом введите диапазон значений названия вашего месяца вместе с именем листа.
Шаг 7: Как только вы дадите ссылку, вы увидите названия месяцев в списке.
Шаг 8: Теперь в окне свойств списка выберите стиль линии как « 1 - fmListStyleOption ».
Шаг 9: Как только вы выберете стиль линии, вы сразу увидите влияние.
Шаг 10: Запустите этот код, вы увидите список в отдельности.
Шаг 11: Теперь мы добавим макрос-код для хранения данных, выбранных пользователем. Дважды щелкните по списку. Вы увидите отдельное имя макроса, как показано ниже.
Private Sub Month_List_Box_Click () End Sub
Шаг 11: Когда пользователь выбирает месяц, мы будем хранить данные в ячейке G5. Чтобы сохранить введенные пользователем данные, добавьте код ниже.
Private Sub Month_List_Box_Click () Диапазон ("G5"). Значение = Month_List_Box.Value End Sub
Шаг 12: Теперь, если вы запустите код и выберете любой из месяцев, мы увидим значение, выбранное пользователем, в ячейке G5.
Я выбрал Jun, чтобы видеть Jun в ячейке G5. Таким образом, мы можем использовать поле со списком в ваших проектах VBA для получения информации от пользователей.
Окно списка VBA - пример № 2
Метод Add.Items для добавления значений в список
Выполните следующие шаги, чтобы создать список в VBA.
Шаг 1: Создайте новую пользовательскую форму. Вот это UserForm2.
Шаг 2: Добавить список в пользовательской форме 2.
Шаг 3: После вставки списка, дайте правильное имя этому списку в окне свойств, то есть Month_list_Box1 .
Шаг 4: Теперь в окне свойств списка выберите стиль линии как « 1 - fmListStyleOption ».
Шаг 5: Дважды щелкните по форме пользователя. Вы увидите автоматически вставленный макрос, как показано ниже.
Private Sub UserForm_Click () End Sub
Шаг 6: поместив курсор внутри макроса, выберите « Initialize ».
Шаг 7: Как только вы выбрали «Initialize», мы можем увидеть новый макрос, который будет создан чуть ниже текущего.
Private Sub UserForm_Initialize () End Sub
Шаг 8: Удалить старый макрос. Под инициализацией пользовательской формы напишите приведенный ниже код, чтобы добавить элементы в список.
Private Sub UserForm_Initialize () Month_List_Box1.AddItem "Янв." Month_List_Box1.AddItem "Фев" Month_List_Box1.AddItem "Mar" "Aug" Month_List_Box1.AddItem "Sep" Month_List_Box1.AddItem "oct" Month_List_Box1.AddItem "Nov" Month_List_Box1.AddItem "Dec" End Sub
Шаг 10: Теперь нажмите кнопку F5, чтобы запустить код, и вы получите следующий вывод.
То, что нужно запомнить
- Если вы даете ссылку на ячейку напрямую, вам необходимо указать имя листа и ссылку на ячейку. (Вам необходимо добавить восклицательный знак (!) Перед именем листа).
- Вы также можете добавить элементы в список с помощью метода Add.Item.
- Если вы хотите разрешить пользователю выбирать более одного элемента, вам нужно выбрать опцию « fmMultiSelectMult» в разделе «Multi-Select» в окне «Свойства».
Рекомендуемые статьи
Это руководство к списку VBA. Здесь мы обсудим, как создать список в Excel и VBA вместе с практическими примерами и загружаемым шаблоном Excel. Вы также можете просмотреть наши другие предлагаемые статьи -
- Как использовать VBA Replace?
- Добавление списка в Excel
- Руководство по массивам Excel VBA
- Выпадающий список Excel