Я создал форму пользователя в Excel 2016, которая содержит несколько полей со списком, несколько текстовых полей, два переключателя и кнопку отправки. Во-первых, как получить поля со списком для ссылки на список, который я уже настроил?

2 ответа2

0

Вы можете запустить событие, используя обработчик события form_activate. Щелкните правой кнопкой мыши на вашей пользовательской форме в окне проекта и нажмите "Просмотреть код"

Вставьте что-то подобное в окно кода:

Private Sub UserForm_Activate()
    ComboBox1.AddItem ("1")
    ComboBox1.AddItem ("2")
    ComboBox1.AddItem ("3")
End Sub

Это загрузит предметы в выпадающий список. Вы также можете изменить его на что-то вроде этого:

Private Sub UserForm_Activate()
    ComboBox1.AddItem (range("'Sheet1'!A1").value)
    ComboBox1.AddItem (range("'Sheet1'!A2").value)
End Sub

если ваши элементы в выпадающем списке находятся где-то в листе Excel.

Как только событие Activate создано, вам нужно что-то, что в первую очередь открывает форму (что, я уверен, вы уже выяснили). Так что-то вроде этого:

Public Sub show_form()
    UserForm1.Show
End Sub

тогда вы вызываете событие show_form с помощью кнопки или чего-либо на листе Excel.

Полный пример

Вот полный пример:

Создать новую рабочую книгу. Положите некоторые данные в A1 и A2. Оставьте имя листа по умолчанию "Sheet1"

Нажмите Alt F11, чтобы открыть сторону VBA. нажмите Вставить> Пользовательская форма

UserForm1 появляется. Щелкните правой кнопкой мыши на нем и выберите «Просмотреть код». Вставьте это:

Private Sub UserForm_Activate()
    ComboBox1.AddItem (Range("'Sheet1'!A1").Value)
    ComboBox1.AddItem (Range("'Sheet1'!A2").Value)
End Sub

Дважды щелкните ThisWorkBook в дереве. Нажмите Вставить> Модуль. Вставьте это:

Public Sub show_form()
    UserForm1.Show
End Sub

Ваше дерево должно выглядеть так:

Теперь в книге Excel добавьте форму, как поле. Щелкните правой кнопкой мыши на вашей фигуре и нажмите «Назначить макрос». Выберите show_form.

Теперь попробуйте войти. Нажмите на форму, которую вы имели. Это должно показать форму. Когда вы щелкаете по раскрывающемуся списку, в нем должны быть два элемента.

0

Вот полный пример:

Создать новую рабочую книгу. Положите некоторые данные в A1 и A2. Оставьте имя листа по умолчанию "Sheet1"

Нажмите Alt F11, чтобы открыть сторону VBA. нажмите Вставить> Пользовательская форма

UserForm1 появляется. Щелкните правой кнопкой мыши на нем и выберите «Просмотреть код». Вставьте это:

Частный Sub UserForm_Activate() ComboBox1.AddItem (Range ("'Sheet1'!A1").Значение) ComboBox1.AddItem (Range ("'Sheet1'!A2").Значение) End Sub Дважды щелкните ThisWorkBook в дереве. Нажмите Вставить> Модуль. Вставьте это:

Public Sub show_form() UserForm1.Show End Sub

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .