Зміст
До цього часу ми розглядали як створювати випадаючі списки в Excel. Сьогодні я покажу як створити випадаючий список з множинним вибором в Excel .
Завантажити Практичний посібник
Ви можете завантажити робочий зошит практики за посиланням.
Створення випадаючого списку з множинним вибором.xlsmПокрокова процедура створення випадаючого списку в Excel з декількома варіантами вибору
Тут у нас є набір даних, що має стовпець Назва книги Наше завдання сьогодні - створити випадаючий список на основі цього набору даних, який допускає кілька варіантів вибору. Я покажу покрокову процедуру в наступному розділі.
КРОК 1: Створення випадаючого списку за допомогою перевірки даних
Для створення випадаючого списку з декількома варіантами вибору спочатку потрібно створити випадаючий список. Давайте розглянемо ці процедури.
- Спочатку виберіть комірку, в якій ви хочете створити випадаючий список. Я вибрав Комірка D5 .
- Далі перейдіть на сторінку Дані і виберіть вкладку Перевірка даних зі стрічки.
- Потім, з боку Перевірка даних у вікні, виберіть Список в Дозволити і запишіть комірки діапазону, дані яких потрібно додати до списку, в розділі Джерело поле.
- Крім того, ви можете натиснути на маленьку стрілку вгору в розділі Джерело і виберіть діапазон даних на робочому аркуші.
- Нарешті, ми побачимо випадаючий список, створений в Комірка D5 .
Схожі читання:
- Як зробити випадаючий список в Excel (незалежний і залежний)
- Зробити множинний вибір зі спадного списку в Excel (3 способи)
- Як створити залежний випадаючий список в Excel
- Створення випадаючого списку з декількома стовпцями в Excel (3 способи)
КРОК 2: Налаштування випадаючого списку на множинний вибір за допомогою коду VBA
Ми вже створили випадаючий список, тепер настав час підготувати його для багаторазового вибору. Я буду використовувати 2 VBA коди, щоб дозволити списку приймати кілька варіантів вибору. Один з них буде приймати повторення даних, а інший не буде приймати повторення даних.
Приклад 1: Код на VBA для множинних вибірок з повторенням
У цьому розділі я покажу спосіб створення випадаючого списку з декількома варіантами вибору, який передбачає повторення даних.
Давайте пройдемося по процедурах.
- Спочатку натисніть ALT + F11 для відкриття VBA вікно.
- Потім виберіть Project Explorer А ще, подвійний - клацнути на тому аркуші, де потрібно виконати завдання.
- Одночасно з цим, в Україні було укладено Код відкриється вікно.
- Після цього у цьому вікні введіть наступний код.
Private Sub Worksheet_Change(ByVal Target As Range) Dim Oldvalue As String Dim Newvalue As String On Error GoTo Exitsub If Target.Address = "$D$5" Then If Target.SpecialCells(xlCellTypeAllValidation) Is Nothing Then GoTo Exitsub Else: If Target.Value = "" Then GoTo Exitsub Else Application.EnableEvents = False Newvalue = Target.Value Application.Undo Oldvalue = Target.Value If Oldvalue = "" ThenTarget.Value = Newvalue Else Target.Value = Oldvalue & ", " & Newvalue End If End If End If Application.EnableEvents = True Exitsub: Application.EnableEvents = True End Sub
Зауважте: У кодовій частині ( Якщо Target.Address = "$D$5" Тоді ) замість посилання на комірку $D$5, ви пишете посилання на комірку, в якій ви створили випадаючий список. - Нарешті, повернемося до робочого аркуша, і ми зможемо вибрати кілька елементів у випадаючому списку з повторенням одного і того ж елемента.
Приклад 2: Код на VBA для багаторазового вибору без повторень
У цьому розділі я покажу, як створити випадаючий список з декількома варіантами вибору, який не потребує повторення даних.
Давайте пройдемося по процедурах.
- Спочатку натисніть ALT + F11 для відкриття VBA вікно.
- Потім виберіть Project Explorer А ще, подвійний - клацнути на тому аркуші, де потрібно виконати завдання.
- Одночасно з цим, в Україні було укладено Код з'явиться вікно.
- Після цього введіть у цьому вікні наступний код.
Private Sub Worksheet_Change(ByVal Target As Range) Dim Oldvalue As String Dim Newvalue As String Application.EnableEvents = True On Error Go To Exitsub If Target.Address = "$D$5" Then If Target.SpecialCells(xlCellTypeAllValidation) Is Nothing Then Go To Exitsub Else: If Target.Value = "" Then Go To Exitsub Else Application.EnableEvents = False Newvalue = Target.Value Application.Undo Oldvalue =Target.Value If Oldvalue = "" Then Target.Value = Newvalue Else If InStr(1, Oldvalue, Newvalue) = 0 Then Target.Value = Oldvalue & ", " & Newvalue Else: Target.Value = Oldvalue End If End If End If End If Application.EnableEvent = True Exitsub: Application.EnableEvent = True End Sub
Зауважте: У кодовій частині ( Якщо Target.Address = "$D$5" Тоді ) замість посилання на комірку $D$5, ви пишете посилання на комірку, в якій ви створили випадаючий список. - Нарешті, повернемося до робочого аркуша, і ми зможемо вибрати кілька елементів у випадаючому списку без повторення одного і того ж елемента.
Висновок
За допомогою цього методу можна створити випадаючий список в Excel з декількома варіантами вибору. У вас залишилися питання? Не соромтеся задавати їх у коментарях. Відвідайте наші Сайт ExcelWIKI для ознайомлення з іншими статтями щодо Excel .