KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

Как заполнить текстовое поле в зависимости от выбора в поле со списком на пользовательской форме в Excel?

АвторSiluviaДата изменения

Представьте, что у вас есть таблица с колонками «Имя» и «Табельный номер», как показано на скриншоте ниже. Вам нужно создать пользовательскую форму: поле со списком должно содержать все имена, а текстовое поле — автоматически заполняться соответствующим табельным номером при выборе имени. Метод, описанный в этой статье, поможет вам легко реализовать такую функциональность.

Снимок экрана, показывающий таблицу с колонками «Имя» и «Табельный номер» в Excel

Заполнение текстового поля на основе выбора в поле со списком на пользовательской форме с помощью VBA


Заполнение текстового поля на основе выбора в поле со списком на пользовательской форме с помощью VBA

Выполните следующие действия, чтобы автоматически заполнить текстовое поле нужным значением в зависимости от выбора в поле со списком на пользовательской форме.

1. Нажмите клавиши Alt+F11, чтобы открыть окно Microsoft Visual Basic for Applications.

2. В окне Microsoft Visual Basic for Applications выберите Вставка > UserForm. См. скриншот:

Снимок экрана, демонстрирующий, как вставить UserForm в Excel VBA

3. Затем добавьте на созданную пользовательскую форму элементы управления «Поле со списком» и «Текстовое поле», как показано на скриншоте ниже.

Снимок экрана UserForm в Excel с добавленными ComboBox и TextBox

4. Щёлкните правой кнопкой мыши по любому пустому месту на пользовательской форме и выберите в контекстном меню пункт Просмотреть код. См. скриншот:

Снимок экрана, показывающий, как открыть окно кода для UserForm в Excel VBA

5. В открывшемся окне кода пользовательской формы скопируйте приведённый ниже код VBA и вставьте его, заменив исходный.

Код VBA: Заполнение текстового поля на основе выбора в поле со списком на пользовательской форме

Dim xRg As Range
'Updated by Extendoffice 2018/1/30
Private Sub UserForm_Initialize()
    Set xRg = Worksheets("Sheet5").Range("A2:B8")
    Me.ComboBox1.List = xRg.Columns(1).Value
End Sub
Private Sub ComboBox1_Change()
    Me.TextBox1.Text = Application.WorksheetFunction.VLookup(Me.ComboBox1.Value, xRg, 2, False)
End Sub

Примечание: A2:B2 — это диапазон, содержащий значения, которые будут отображаться соответственно в поле со списком и текстовом поле на пользовательской форме. Sheet5 — имя листа с этими данными. При необходимости измените указанные параметры.

6. Нажмите клавиши Alt+Q, чтобы закрыть окно Microsoft Visual Basic for Applications.

7. Выберите Разработчик > Вставить > Кнопка (элемент управления ActiveX), чтобы добавить кнопку на лист.

8. Щёлкните правой кнопкой мыши по ярлыку листа, выберите в контекстном меню пункт Просмотреть код, а затем скопируйте и вставьте код VBA в окно редактора.

Код VBA: Отображение пользовательской формы

Private Sub CommandButton1_Click()
'Updated by Extendoffice 2018/1/30
    UserForm1.Show
End Sub

9. Отключите режим конструктора в книге.

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

Снимок экрана UserForm в Excel, где выбор в ComboBox заполняет TextBox


Связанные статьи:

Лучшие инструменты повышения продуктивности в Office

🤖KUTOOLS AI Помощник: Преобразуйте Анализ данных с помощью:Интеллектуального выполнения   |  Генерации кода|  Создания пользовательские формулы  |  Анализа данных и построения диаграмм|  Вызова Расширенные функции
Популярные функции:Поиск, выделение или Отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячеек без потери данных   |  Округление без использования формул
Супер ПОИСК:VLookup по нескольким критериям  |  VLookup по нескольким значениям  |   VLookup по нескольким листам   |   Распознавание нечетких соответствий
Расширенный раскрывающийся список:Быстрое создание выпадающего списка   |  Зависимый выпадающий список   |  Выпадающий список с множественным выбором
Управление столбцами:Добавление заданного количества столбцов|Перемещение столбцов|Переключение видимости скрытых столбцов|Сравнение диапазонов и столбцов
Избранные функции:Сетка фокусировки   |  Просмотр дизайна   |Улучшенная строка формулы   | Управление рабочими книгами и листами   |  Библиотека ресурсов(автотекст)|  Выбор даты   |  Объединить листы  |  Шифрование/Расшифровать ячейки   | Отправка писем по списку   |  Супер фильтр   |   Специальный фильтр(Фильтр ячеек с жирным шрифтом/курсив/зачёркивание…) …
Лучшие наборы инструментов 15:12 Текстовыеинструменты(Добавить текст,Удалить определенные символы, …)|   50+Типыдиаграмм(Диаграмма Ганта, …)|   40+ Практические формулы(Рассчитать возраст на основе даты рождения, …)|   19 Инструментывставки(Вставить QR-код,Вставка изображения по пути, …)|   12 Инструментыпреобразования(Преобразовать в слова,Конвертация валют, …)|   7 Объединить и разделитьИнструменты(Расширенное объединение строк,Разделить ячейки, …)|… и многое другое
Используйте Kutools на предпочитаемом языке — поддержка английского, испанского, немецкого, французского, китайского и ещё 40+ языков!

Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…


Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу

  • Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
  • Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!

Все надстройки Kutools — один установщик

Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.

ExcelWordOutlookTabsPowerPoint
  • Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
  • Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
  • Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
  • 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
  • Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек