Як створити мультивибірковий список в Excel (з простими кроками)

  • Поділитися Цим
Hugh West

Коли ми працюємо з великим масивом даних, часто буває складно отримати з нього будь-яке вибіркове значення. Більше того, не можна вибрати більше, ніж кілька фрагментів інформації одночасно. У цьому випадку, ListBox є дуже корисним рішенням в Excel Але процес створення цього ListBox Тому в цій статті ми навчимося створювати мультивибірку ListBox в Excel за допомогою кількох простих кроків.

Завантажити Практичний посібник

Отримайте зразок файлу для практики.

Multi Select ListBox.xlsm

Покрокові дії по створенню списку з декількома випадаючими списками в Excel

Щоб полегшити процес, ми розділили його на 8 Отже, без подальших зволікань, давайте перейдемо до наведених нижче кроків, щоб побачити, як ми можемо створити мультивибірку ListBox в Excel.

Крок 1: Створіть таблицю Excel з набору даних

Спочатку нам потрібно підготувати вибірку даних і перетворити її в таблицю. Для цього виконаємо наступні кроки.

  • По-перше, створіть набір даних з інформацією про 10 Назви міст та їхні Загальна кількість населення про США касовий апарат 1, липень в Діапазон комірок B5:C14 .

  • Тепер клацніть на будь-якій комірці набору даних і виберіть Таблиця від Вставка рахунок.

  • Потім ви побачите Створити таблицю вікно, яке автоматично вибирає діапазон комірок для створення таблиці.
  • У цьому вікні встановіть галочку напроти пункту Моя таблиця має заголовки і натисніть ГАРАЗД. .

  • В результаті ви побачите, що набір даних перетворено в таблицю.

  • Разом з ним ви можете ознайомитися з таблицею в розділі Назва таблиці під рубрикою "Коробка" в розділі Дизайн столу вкладка

  • Ви можете змінити назву таблиці на свій розсуд.

Читати далі: Як створити залежний випадаючий список в Excel

Крок 2: Список наборів даних імен з Менеджера імен

Тепер дамо назву кожній категорії діапазону комірок з таблиці. Для цього пройдемо по кроках.

  • Спочатку виберіть будь-яку комірку з Колонка Б у таблиці.
  • Потім перейдіть на сторінку Формули і виберіть вкладку Визначити ім'я .

  • Після цього ви побачите Нова назва діалогове вікно.
  • У цьому діалоговому вікні введіть будь-яку назву відповідно до обраного заголовку стовпця у вікні Ім'я та прізвище Ящик.

  • Далі необхідно натиснути на кнопку Відноситься до у цьому ж вікні.
  • Потім наведіть курсор на заголовок і він покаже чорну стрілку.
  • Після цього, натиснувши лівою кнопкою миші, виберіть пункт Діапазон комірок B5:B14 .

  • В результаті ви побачите список імен разом з назвою таблиці в розділі Відноситься до і натисніть ГАРАЗД. .

  • Аналогічну процедуру виконайте для Діапазон комірок C5:C14 також.
  • Нарешті, ви побачите імена в Поле для введення імені у верхньому лівому куті робочого зошита.

Крок 3: Створення випадаючого списку з перевіркою даних

На цьому етапі ми створимо випадаючий список з іменованих діапазонів з перевіркою даних. Це важлива частина створення ListBox Ми створимо його на іншому аркуші книги, але ви можете зробити це і на цьому ж аркуші. Давайте розглянемо процес нижче.

  • На початку виділіть кілька клітинок з таблиці, до яких потрібно застосувати Перевірка даних .
  • Потім перейдіть на сторінку Дані вкладку та оберіть Перевірка даних в Інструменти даних розділ.

  • Далі, в рамках Налаштування вкладка, виберіть Список в Дозволити Ящик.

  • Також, відмітка поставила галочку напроти Ігнорувати пусте місце і Випадаюче меню в комірці коробки.

  • Після цього натисніть на кнопку Джерело у цьому вікні та натисніть кнопку F3 на клавіатурі.
  • В результаті ви побачите Назва пасти діалогове вікно зі списком імен.
  • Тут обирайте Назви міст зі списку та натисніть ГАРАЗД. .

  • Після цього ви побачите назву першого списку, що відображається у вікні джерела.

  • Наостанок, натисніть ГАРАЗД. і застосувати той самий процес до другого списку імен.
  • Нарешті, ви побачите, що Перевірка даних активується на виділених комірках.

Крок 4: Вставте код VBA на перевірений аркуш

Тепер настає найвідповідальніша частина вставки VBA код для створення ListBox Процедура для цього наступна.

  • Спочатку клацніть правою кнопкою миші на перевіреному аркуші і виберіть Переглянути код від Контекстне меню .

  • Потім вставте цей код на сторінку.
 Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim rngDV As Range Dim oldVal As String Dim newVal As String Dim strList As String On Error Resume Next Application.EnableEvents = False Set rngDV = Cells.SpecialCells(xlCellTypeAllValidation) On Error GoTo exitHandler If rngDV Is Nothing Then GoTo exitHandler If Not Intersect(Target, rngDV) Is Nothing Then If Target.Validation.Type = 3Then strList = Target.Validation.Formula1 strList = Right(strList, Len(strList) - 1) strDVList = strList frmDVList.Show End If End If exitHandler: Application.EnableEvents = True End Sub 

  • Далі перейдіть на сторінку Вставка і виберіть вкладку Модуль .
  • На цьому етапі ім'я робочої книги повинно бути вибрано у вікні Об'єкт проекту вікно.

  • Потім перейменуйте модуль на modSettings і вставте цей код.
 Option Explicit Global strDVList As String 

Завдяки Контексти за надання кодів.

Крок 5: Створення користувацької форми зі списком та кнопками

На цьому етапі ми створимо UserForm для трудової книжки разом з ListBox і деякі Командні кнопки Для цього необхідно виконати наступну процедуру.

  • Спочатку виберіть робочу книгу в розділі Project-VBAProject вікно у вікні Visual Basic редактор.

  • Потім перейдіть на сторінку Вставка і виберіть вкладку UserForm .

  • В результаті ви отримаєте UserForm інтерфейс, як цей.

  • Разом з цим, ви також отримаєте Інструментарій вікно.
  • Звідси тягніть ListBox до UserForm .

  • Після цього, на засіданні ListBox буде виглядати наступним чином. Ви можете регулювати розмір, перетягуючи краї поля.

  • Далі перетягніть кнопку CommanButton двічі до UserForm а також створити 2 кнопки для роботи.

  • Врешті-решт, кінцевий результат виглядає наступним чином.

Крок 6: Зміна налаштувань властивостей

На цьому етапі ми внесемо деякі зміни у властивості кожного компонента ListBox .

  • На початку натисніть F4 на Visual Basic редактора, щоб відкрити Вікно властивостей .
  • Потім виберіть пункт UserForm і змінити Ім'я та прізвище і Підпис ось так.

  • Далі оберіть ListBox і змінити Ім'я та прізвище відповідно до ваших уподобань.

  • Крім того, змінюється тип ListStyle , MultiSelect і Спецефект як показано на малюнку нижче.

  • Тепер обираємо першу командну кнопку та вносимо наступні зміни у властивості.

  • Крім того, відредагуйте також властивості другої командної кнопки.

Крок 7: Застосування коду VBA до UserForm

На даному етапі ми будемо застосовувати VBA коди до кожної зі складових частин UserForm Подивимося, як це працює.

  • Спочатку виберіть UserForm і поїдемо до Вид вкладку, щоб вибрати Код .

  • Потім вставте цей код на чисту сторінку. Він автоматично запуститься при натисканні кнопки UserForm відкрито.
 Private Sub UserForm_Initialize() Me.lstDV.RowSource = strDVList End Sub 

  • Після цього поверніться до UserForm інтерфейсу, натиснувши на Об'єкт на Вид рахунок.

  • Тепер, дотримуйтесь процесу, щоб вставити цей код для ГАРАЗД. кнопку.
 Private Sub cmdOK_Click() Dim strSelItems As String Dim lCountList As Long Dim strSep As String Dim strAdd As String Dim bDup As Boolean On Error Resume Next strSep = ", " With Me.lstDV For lCountList = 0 To .ListCount - 1 If .Selected(lCountList) Then strAdd = .List(lCountList) Else strAdd = "" End If If strSelItems = "" Then strSelItems = strAdd Else If strAdd "" Then strSelItems = strAdd_ & strSep & strAdd End If End If Next lCountList End With With ActiveCell If .Value "" Then .Value = ActiveCell.Value _ & strSep & strSelItems Else .Value = strSelItems End If End With Unload Me End Sub 

  • Разом з цим введіть цей код для Закрити використовуючи той самий процес.
 Private Sub cmdClose_Click() Unload Me End Sub 

  • Наостанок, натисніть Ctrl + S зберегти його та закрити вікно.

Завдяки Контексти за допомогу з кодами.

Крок 8: Множинний вибір з поля ListBox

Нарешті, ми успішно створили ListBox Щоб перевірити, працює код чи ні, просто виконайте ці дії.

  • Спочатку виберіть Комірка B5 куди ми зверталися Перевірка даних .
  • Одразу після цього ListBox з'явиться спливаюче вікно з командою Вибрати елемент зі списку .
  • У цьому вікні оберіть декілька прізвищ зі списку.

  • Потім натисніть ГАРАЗД. .
  • Нарешті, ви успішно пройшли багаторазовий відбір з ListBox і кожне ім'я відокремлюється символом Кома ( , ).

Важливі моменти для запам'ятовування

  • Іменовані діапазони не створить Перевірка даних правило, якщо вони введені як посилання на комірку або з роздільниками.
  • На сьогоднішній день, на жаль, це не так. Глобальна змінна застосовується для обох UserForm і Робочий аркуш VBA код. Будь-яке активне ім'я комірки спочатку передає код strDVList до тимчасового діапазону, а потім використовується як RowSource для ListBox коли користувач відкриває сторінку UserForm .
  • Ви можете об'єднати кілька діапазонів в одній назві для зручності вибору.

Висновок

На цьому на сьогодні все. Сподіваюся, що ці довгі, але прості кроки про те, як створити ListBox з множинним вибором в excel трохи спростили для вас цю тему. Повідомте нам про ваші побажання в коментарях. Слідкуйте за оновленнями. ExcelWIKI щоб побачити більше подібних статей.

Г’ю Вест — досвідчений тренер і аналітик Excel із понад 10-річним досвідом роботи в галузі. Він має ступінь бакалавра з бухгалтерського обліку та фінансів і ступінь магістра з ділового адміністрування. Г’ю має пристрасть до викладання та розробив унікальний підхід до викладання, який легко зрозуміти та дотримуватися. Його експертне знання Excel допомогло тисячам студентів і професіоналів у всьому світі вдосконалити свої навички та досягти успіху в кар’єрі. У своєму блозі Г’ю ділиться своїми знаннями зі світом, пропонуючи безкоштовні навчальні посібники з Excel та онлайн-навчання, щоб допомогти окремим особам і компаніям повністю розкрити свій потенціал.