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

  • Поделись Этим
Hugh West

До сих пор мы рассматривали как создавать выпадающие списки в Excel. Сегодня я покажу как создать выпадающий список с несколькими вариантами выбора в Excel .

Скачать Практическое пособие

Рабочую тетрадь для практических занятий можно скачать отсюда.

Создание выпадающего списка с множественным выбором.xlsm

Пошаговая процедура создания выпадающего списка в Excel с несколькими вариантами выбора

Здесь у нас есть набор данных со столбцом Название книги Наша цель сегодня - создать выпадающий список на основе этого набора данных с возможностью выбора нескольких вариантов. Я покажу пошаговую процедуру в следующем разделе.

ШАГ 1: Создание выпадающего списка с помощью проверки данных

Для создания выпадающего списка с несколькими вариантами выбора нам необходимо сначала создать выпадающий список. Давайте рассмотрим все процедуры.

  • Сначала выберите ячейку, в которой вы хотите создать выпадающий список. Я выбрал ячейку Ячейка D5 .

  • Затем перейдите к Данные вкладку и выберите Валидация данных из ленты.

  • Затем, из Валидация данных в окне выберите Список в Разрешить и запишите ячейки диапазона, данные которых вы хотите добавить в список, в разделе Источник поле.
  • Также вы можете нажать на маленькую стрелку вверх в окне Источник раздел и выберите диапазон данных на рабочем листе.

  • Наконец, мы увидим выпадающий список, созданный в разделе Ячейка D5 .

Похожие чтения:

  • Как сделать выпадающий список в Excel (независимый и зависимый)
  • Сделать множественный выбор из выпадающего списка в Excel (3 способа)
  • Как создать зависимый выпадающий список в Excel
  • Создание выпадающего списка в нескольких столбцах в Excel (3 способа)

ШАГ 2: Включение множественного выбора в раскрывающемся списке с помощью кода VBA

Мы уже создали выпадающий список. Теперь пришло время подготовить выпадающий список для множественного выбора. Я буду использовать 2 VBA коды, позволяющие списку принимать несколько вариантов выбора. Один будет принимать повторение данных, а другой не будет принимать повторение данных.

Пример 1: Код VBA для множественного выбора с повторением

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

Давайте пройдемся по процедурам.

  • Сначала нажмите ALT + F11 чтобы открыть VBA окно.
  • Затем выберите Исследователь проектов . Также, двойной - нажмите на листе, где нужно выполнить задание.

  • Одновременно Код откроется окно.
  • После этого напишите в этом окне следующий код.
 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 = Target.Value ThenTarget.Value = Newvalue Else Target.Value = Oldvalue & ", " & Newvalue End If 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 окно.
  • Затем выберите Исследователь проектов . Также, двойной - нажмите на листе, где нужно выполнить задание.

  • Одновременно Код появится окно.
  • После этого введите в это окно следующий код.
 Private Sub Worksheet_Change(ByVal Target As Range) Dim Oldvalue As String Dim Newvalue As String Application.EnableEvents = True 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 = "" 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.EnableEvents = True Exitsub: Application.EnableEvents = True End Sub 

Примечание: В части кода ( Если Target.Address = "$D$5" Затем ) вместо ссылки на ячейку $D$5, вы пишете ссылку на ячейку, в которой вы создали выпадающий список.

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

Заключение

Используя этот метод, вы можете создать выпадающий список в Excel с несколькими вариантами выбора. У вас есть вопросы? Не стесняйтесь, дайте нам знать в разделе комментариев. Посетите наш сайт Веб-сайт ExcelWIKI для получения дополнительных статей о Excel .

Хью Уэст — опытный тренер и аналитик Excel с более чем 10-летним опытом работы в отрасли. Он имеет степень бакалавра в области бухгалтерского учета и финансов и степень магистра делового администрирования. Хью страстно любит преподавать и разработал уникальный подход к обучению, которому легко следовать и который легко понять. Его экспертные знания Excel помогли тысячам студентов и специалистов по всему миру улучшить свои навыки и преуспеть в своей карьере. В своем блоге Хью делится своими знаниями со всем миром, предлагая бесплатные учебные пособия по Excel и онлайн-обучение, чтобы помочь отдельным лицам и компаниям полностью раскрыть свой потенциал.