Создание раскрывающегося списка. Как настроить зависимые выпадающие списки в Excel с поиском

При создании таблиц порой очень удобно использовать выпадающие (иначе говоря — раскрывающиеся) списки. Excel 2010 позволяет это делать несколькими способами. Рассмотрим их.

Способ 1. Создаем раскрывающийся список в Excel 2010, используя инструмент «Проверка данных»

Этот способ считается стандартным, поскольку он прост и удобен.

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

2. Задайте имя диапазону ячеек. Для этого:

  • кликните верхнюю ячейку списка и, зажав левую кнопку мыши, тяните курсор вниз, пока весь список не будет выделен.
  • установите курсор в поле «Имя», слева от строки формул;
  • введите имя списка и нажмите Enter.

Обратите внимание, имя списка всегда должно начинаться с буквы и не содержать пробелов.

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

4. Откройте вкладку «Данные» и нажмите кнопку «Проверка данных». В открывшемся окне перейдите на вкладку «Параметры». В выпадающем списке «Тип данных» выберите пункт «Список».

5. В строке «Источник» нужно указать адрес, откуда будет взяты элементы создаваемого списка. Адресом будет имя, которое вы присвоили диапазону ячеек. Задать адрес можно несколькими способами.

  • Вписать вручную, поставив перед ним знак «равно», например, «=месяца». Регистр букв не важен.
  • Щелкнув мышью в строке «Источник» (для активации), выделить курсором все элементы списка в таблице.

6. Если нужно создать сообщение для ввода, откройте одноименную вкладку. Напишите текст, который будет появляться рядом с ячейкой с раскрывающимся списком при ее выделении. На соседней вкладке — «Сообщение об ошибке», таким же образом можно написать текст, уведомляющий об ошибках.

7. Подтвердите ввод нажатием «ОК», и раскрывающийся список готов. Для его открытия нажмите на кнопку со стрелкой вниз, которая появится рядом с ячейкой, содержащей список.

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

Выпадающий список в Excel 2010 можно создавать одним нажатием сочетания клавиш, но он может быть расположен только в одном месте — в ячейке под элементами списка.

1. Перечислите в столбик все элементы будущего выпадающего списка.

2. Выделите ячейку, находящуюся под последним элементом и нажмите сочетание клавиш «Alt» + «стрелка вниз» — список будет создан. Этот метод позволит задать ячейке значение одного из элементов.

Способ 3. Создание выпадающего списка как элемента управления

Для применения этого метода включите отображение вкладки «Разработчик»: откройте меню «Файл» — «Параметры» — «Настройка ленты». В столбце «Основные вкладки» отметьте галочкой пункт «Разработчик». Подтвердите действие нажатием «ОК» — вкладка будет создана.

1. Перечислите элементы будущего списка в столбик.

2. Из меню «Вставить» вкладки «Разработчик» выберите пункт «Элементы управления формы» — «Поле со списком».

3. Нарисуйте на листе курсором ваш будущий раскрывающийся список. Кликните по нему правой кнопкой мыши и выберите из меню пункт «Формат объекта».

4. Значением поля «Формировать список по диапазону» должен быть список элементов — выделите его курсором, и поле будет заполнено автоматически. В поле «Связь с ячейкой» указывается адрес ячейки, где будет показан порядковый номер выделенного элемента. Выберите ячейку и кликните по ней. Поле «Количество строк списка» позволяет настроить, сколько элементов будет отображено при раскрытии списка.

5. Подтвердите ввод и нажмите «ОК». Список будет создан.

Способ 4. Создание выпадающего списка как элемента ActiveX

Самый сложный метод, но обладающий максимально гибкими настройками.

1. Создайте список вышеописанным способом.

2. Из меню «Вставить» вкладки «Разработчик» выберите пункт «Элементы ActiveX» — «Поле со списком».

3. Нарисуйте на листе будущий раскрывающийся список.

4. Опция, которая позволяет редактировать выпадающий список называется «Режим конструктора». Если данный режим активен — будет выделена одноименная кнопка в разделе «Элементы управления», рядом с кнопкой «Вставить». Если кнопка не выделена — режим редактирования отключен.

5. Для задания параметров списка нажмите кнопку «Свойства» того же раздела. Откроется окно настроек «Properties». Обе вкладки этого окна содержат одни и те же настройки, рассортированные в первом случае — по алфавиту, во втором — по категориям.

6. Большинство настроек можно оставить по умолчанию, а самое необходимое перечислено ниже.

  • ListRows — аналог значения «Количество строк в списке», покажет, сколько строк будет отображаться.
  • Font — настройки шрифта. Позволяет выбрать шрифт и его начертание.
  • ForeColor — выбор из таблицы цвета шрифта.
  • BackColor — цвет заднего фона.
  • ListFillRange — расположение списка элементов в формате: лист(«!» — разделитель) и диапазон ячеек. Например: Лист2!D2:D6. Прописывается вручную.
  • LinkedCell — связь с ячейкой. Вручную указывается адрес ячейки, где будет показываться порядковый номер выделенного элемента списка.

7. Сохраните настройки и деактивируйте режим конструктора нажатием на одноименную кнопку. Выпадающий список будет создан, а вы сможете проверить, как он работает.

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

В этой статье

Типы списков

Программой Access предусмотрены два типа элементов управления "Список": список и поле со списком.

Данный элемент управления отображает список значений или вариантов. Список содержит строки данных и обычно имеет такой размер, чтобы всегда были видны несколько строк. Строки могут содержать один или несколько столбцов с заголовками или без них. Если список содержит больше строк, чем может быть отображено в элементе управления, появится полоса прокрутки. Выбор ограничен вариантами, представленными в списке; ввести значение в список невозможно.

Поле со списком. Данный элемент управления является более компактным способом отображения списка вариантов: список скрыт до тех пор, пока пользователь не нажмет кнопку раскрытия списка. Кроме того, поле со списком позволяет вводить значения, не содержащиеся в списке. Таким образом, этот элемент управления объединяет в себе функции текстового поля и списка.

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

2. Выберите необходимый вариант из раскрывающегося списка.

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

Создание списка или поля со списком с помощью мастера

Создание списка или поля со списком путем добавления поля подстановок в форму

Связанные списки или поля со списком можно создавать путем добавления поля подстановок в форму.

Создание списка или поля со списком без использования мастера

При создании списка или поля со списком без использования мастера необходимо вручную задать ряд свойств элемента управления. Для получения дополнительных сведений об определенном свойстве нажмите это свойство, а затем - клавишу F1.

Задача

Значение свойства "Тип источника строк"...

Задайте следующее значение свойства "Источник строк":

Показать значения из таблицы или запроса либо результатов инструкции SQL

Таблица/запрос

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

Введите инструкцию SQL.

На вкладке данные страницы свойств нажмите кнопку , чтобы открыть построитель запросов. Дополнительные сведения о создании запросов см. в статье Создание простого запроса на выборку .

Показать фиксированный список значений

Список значений

Введите список фиксированных значений, разделяя их точкой с запятой (; ). Например, Север; Нижний Поддержки Запад

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

Показать список полей из таблицы или запроса

Список полей

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

    Если вы хотите включить в элемент управления несколько столбцов, перейдите к ячейке свойства Число столбцов и введите их число. Задайте ширину столбцов с помощью свойства Ширина столбцов . Чтобы получить дополнительные сведения о каждом свойстве установите курсор в поле этого свойства и нажмите клавишу F1.

    Если вы хотите, чтобы программа Access сохранила выбранное значение, нажмите поле свойства Данные и укажите поле, к которому нужно присоединить список или поле со списком.

Настройка списка или поля со списком

В форме, открытой в режиме конструктора, выделите список или поле со списком и нажмите клавишу F4, чтобы открыть страницу свойств элемента управления. Затем выполните одно из указанных ниже действий.

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

    Присоединение столбца списка или поля со списком

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

    Если для свойства Присоединенный столбец задано значение "0", программа Access будет сохранять индекс списка, а не значения одного из столбцов. Это удобно, если нужно вместо значений списка сохранить последовательность чисел.

    Скрытие столбца в списке или в поле со списком в форме

    • В поле свойства Ширина столбцов введите значение 0 для столбцов, которые нужно скрыть.

      Предположим, что у вас есть присоединенное поле со списком из двух столбцов: "КодПоставщика" шириной 1 см и "ИмяПоставщика" шириной 5 см. Столбец "КодПоставщика" - первый столбец списка, поэтому для свойства Ширина столбцов задано значение 1см;5см . Чтобы скрыть столбец "КодПоставщика", установите для свойства Ширина столбцов значение 0см;5см . Столбец "КодПоставщика" остается присоединенным, несмотря на то, что он скрыт.

      Примечание: Если список не раскрыт, в поле со списком отображается первый видимый столбец списка. Например, в предыдущем примере будет отображаться столбец "ИмяПоставщика", поскольку столбец "КодПоставщика" скрыт. Если бы он не был скрытым, в поле отображались бы значения из этого столбца, а не столбца "ИмяПоставщика".

    Добавление заголовков столбцов в поле со списком в форме

    • Чтобы отобразить заголовки столбцов, задайте для свойства Заголовки столбцов значение Да . В полях со списком заголовки списка отображаются только при его раскрытии.

      Если поле со списком или список созданы на основе источника записей, программа Access будет использовать имена полей этого источника записей в качестве заголовков столбцов. Если поле со списком или список созданы на основе списка фиксированных значений, то в качестве заголовков столбцов программа Access будет использовать первые n элементов списка значений (заданных в свойстве Источник строк), где n равно значению свойства Число столбцов .

    Отключение автозавершения при вводе для поля со списком в форме

    • В поле свойства Автоподстановка задайте значение Нет .

      В этом случае нужно будет выбирать значение из списка или вводить его целиком.

    Настройка ширины списка для поля со списком в форме

    • Введите в поле свойства Ширина списка значение ширины в текущих единицах измерения (заданных в панели управления Windows). Чтобы использовать единицы измерения, отличные от принятых по умолчанию, введите обозначение единиц измерения. Например, введите значение 2 см . Убедитесь, что оставлено достаточно места для полосы прокрутки.

      Список поля со списком может быть шире его текстового поля, но не может быть более узким. Значение по умолчанию (Авто ) обеспечивает одинаковую ширину текстового поля и списка.

    Настройка максимального числа строк, отображаемых в поле со списком в форме

    • Введите число в поле свойства Число строк списка .

      Если фактическое количество строк списка превышает значение, указанное в свойстве Число строк списка , при раскрытии списка отображается вертикальная полоса прокрутки.

    Ограничение значений поля со списком элементами, присутствующими в списке в форме

    • В поле свойства Ограничиться списком выберите значение Да .

      Примечания:

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

        Если для свойства Ограничиться списком задано значение Нет , то при вводе в присоединенное поле со списком значения, которого нет в списке, это значение заносится в базовое поле, но не добавляется в список. Чтобы добавить в список элементы, используйте свойство Отсутствие в списке и событие Нет в списке .

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

Как сделать выпадающий список в Excel

Как сделать выпадающий список в Excel 2010 или 2016 с помощью одной командой на панели инструментов? На вкладке «Данные» в разделе «Работа с данными» найдите кнопку «Проверка данных». Нажмите на нее и выберите первый пункт.

Откроется окно. Во вкладке «Параметры» в выпадающем разделе «Тип данных» выберите «Список».


Снизу появится строка для указания источников.


Указывать информацию можно по-разному.

Сначала назначим имя. Для этого создайте на любом листе такую таблицу.

Выделите ее и нажмите правую кнопку мыши. Щелкните по команде «Присвоить имя».

Введите имя в строку сверху.

Вызовите окно «Проверка данных» и в поле «Источник» укажите имя, поставив перед ним знак «=».


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

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

Подстановка динамических данных Excel

Если Вы добавите какое-то значение в диапазон данных, которые подставляются в перечень, то в нем изменения не произойдет, пока вручную не будут указаны новые адреса. Чтобы связать диапазон и активный элемент, необходимо оформить первый как таблицу. Создайте вот такой массив.

Выделите его и на вкладке «Главная» выберите любой стиль таблицы.


Обязательно поставьте галочку внизу.

Вы получите такое оформление.

Создайте активный элемент, как было описано выше. В качестве источника введите формулу

=ДВССЫЛ("Таблица1[Города]")

Чтобы узнать имя таблицы, перейдите на вкладку «Конструктор» и посмотрите его. Можете поменять имя на любое другое.


Функция ДВССЫЛ создает ссылку на ячейку или диапазон. Теперь ваш элемент в ячейке привязан к массиву данных.

Попробуем увеличить количество городов.


Обратная процедура - подстановка данных из выпадающего списка в таблицу Excel, работает очень просто. В ячейку, куда надо вставить выбранное значение из таблицы, введите формулу:

Адрес_ячейки

Например, если перечень данных находится в ячейке D1, то в ячейке, куда будут выведены выбранные результаты введите формулу

Как убрать (удалить) выпадающий список в Excel

Откройте окно настройки выпадающего списка и выберите «Любое значение» в разделе «Тип данных».



Ненужный элемент исчезнет.

Зависимые элементы

Иногда в Excel встречается необходимость создания нескольких перечней, когда один зависит от другого. Например, каждый город имеет несколько адресов. При выборе в первом мы должны получить только адреса выбранного населенного пункта.


В этом случае дайте имя каждому столбцу. Выделите без первой ячейки (названия) и нажмите правую кнопку мыши. Выберите «Присвоить имя».

Это будет название города.


При именовании Санкт-Петербурга и Нижнего Новгорода Вы получите ошибку, так как имя не может содержать пробелов, символов подчеркивания, специальных символов и т.д.


Поэтому переименуем эти города, поставив нижнее подчеркивание.


Первый элемент в ячейке A9 создаем обычным образом.


А во втором пропишем формулу:

ДВССЫЛ(A9)


Сначала Вы увидите сообщение об ошибке. Соглашайтесь.

Проблема в отсутствии выбранного значения. Как только в первом перечне будет выбран город, второй заработает.

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

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


Для второго перечня нужно ввести формулу:

СМЕЩ($A$1;ПОИСКПОЗ($E$6;$A:$A;0)-1;1;СЧЁТЕСЛИ($A:$A;$E$6);1)

ПОИСКПОЗ возвращает номер ячейки с выбранным в первом списке (E6) городом в указанной области SA:$A.
СЧЕТЕСЛИ считает количество совпадений в диапазоне со значением в указанной ячейке (E6).


Мы получили связанные выпадающие списки в Excel с условием на совпадение и поиском диапазона для него.

Мультивыбор

Часто нам необходимо получить несколько значений из набора данных. Можно вывести их в разные ячейки, а можно объединить в одну. В любом случае необходим макрос.
Нажмите на ярлыке листа внизу правую кнопку мыши и выберите команду «Просмотреть код».


Откроется окно разработчика. В него надо вставить следующий алгоритм.

Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next If Not Intersect(Target, Range("C2:F2")) Is Nothing And Target.Cells.Count = 1 Then Application.EnableEvents = False If Len(Target.Offset(1, 0)) = 0 Then Target.Offset(1, 0) = Target Else Target.End(xlDown).Offset(1, 0) = Target End If Target.ClearContents Application.EnableEvents = True End If End Sub


Обратите внимание, что в строке

If Not Intersect(Target, Range("E7")) Is Nothing And Target.Cells.Count = 1 Then

Следует проставить адрес ячейки со списком. У нас это будет E7.

Вернитесь на лист Excel и создайте в ячейке E7 список.

При выборе значения будут появляться под ним.

Следующий код позволит накапливать значения в ячейке.

Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next If Not Intersect(Target, Range("E7")) Is Nothing And Target.Cells.Count = 1 Then Application.EnableEvents = False newVal = Target Application.Undo oldval = Target If Len(oldval) <> 0 And oldval <> newVal Then Target = Target & "," & newVal Else Target = newVal End If If Len(newVal) = 0 Then Target.ClearContents Application.EnableEvents = True End If End Sub

Как только Вы переведете указатель на другую ячейку, Вы увидите перечень выбранных городов. Для прочитайте эту статью.


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

Отличного Вам дня!

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

Несколько наиболее распространенных типов выпадающих списков, которые можно создать в программе Excel:

  1. С функцией мультивыбора;
  2. С наполнением;
  3. С добавлением новых элементов;
  4. С выпадающими фото;
  5. Другие типы.

Сделать список в Эксель с мультивыбором

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

Рассмотрим подробнее все основные и самые распространенные типы, и процесс их создание на практике.

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

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

Чтобы создать такой, следуйте инструкции:

  • Выделите ячейки. Если посмотреть на рисунок, то выделять нужно начиная с C2 и заканчивая C5;
  • Найдите вкладку «Данные», которая расположена на главной панели инструментов в окне программы. Затем нажмите на клавишу проверки данных, как показано на рисунке ниже;

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

Пр имер заполнения:

Таким образом вы создадите классический горизонтальный список с функцией мультивыбора.

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

Создать список в Экселе с наполнением

Стандартный перечень с наполнением позволит вам автоматизировать процесс ввода информации. При нажатии на ее, появится выбор ее возможных значений.

Пользователю остается только выбрать необходимое значение для заполнения.

Самый простой способ создать такой перечень – использовать «умные таблицы программы».

С их помощью можно легко и быстро форматировать необходимые вам виды списков с наполнением:

  • Выделите необходимые ячейки и нажмите в главной вкладке на клавишу «Форматировать как таблицу»;

Под выпадающим списком понимается содержание в одной ячейке нескольких значений. Когда пользователь щелкает по стрелочке справа, появляется определенный перечень. Можно выбрать конкретное.

Очень удобный инструмент Excel для проверки введенных данных. Повысить комфорт работы с данными позволяют возможности выпадающих списков: подстановка данных, отображение данных другого листа или файла, наличие функции поиска и зависимости.

Создание раскрывающегося списка

Путь: меню «Данные» - инструмент «Проверка данных» - вкладка «Параметры». Тип данных – «Список».

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

Любой из вариантов даст такой результат.



Выпадающий список в Excel с подстановкой данных

Необходимо сделать раскрывающийся список со значениями из динамического диапазона. Если вносятся изменения в имеющийся диапазон (добавляются или удаляются данные), они автоматически отражаются в раскрывающемся списке.


Протестируем. Вот наша таблица со списком на одном листе:

Добавим в таблицу новое значение «елка».

Теперь удалим значение «береза».

Осуществить задуманное нам помогла «умная таблица», которая легка «расширяется», меняется.

Теперь сделаем так, чтобы можно было вводить новые значения прямо в ячейку с этим списком. И данные автоматически добавлялись в диапазон.


Когда мы введем в пустую ячейку выпадающего списка новое наименование, появится сообщение: «Добавить введенное имя баобаб в выпадающий список?».

Нажмем «Да» и добавиться еще одна строка со значением «баобаб».

Выпадающий список в Excel с данными с другого листа/файла

Когда значения для выпадающего списка расположены на другом листе или в другой книге, стандартный способ не работает. Решить задачу можно с помощью функции ДВССЫЛ: она сформирует правильную ссылку на внешний источник информации.

  1. Делаем активной ячейку, куда хотим поместить раскрывающийся список.
  2. Открываем параметры проверки данных. В поле «Источник» вводим формулу: =ДВССЫЛ(“[Список1.xlsx]Лист1!$A$1:$A$9”).

Имя файла, из которого берется информация для списка, заключено в квадратные скобки. Этот файл должен быть открыт. Если книга с нужными значениями находится в другой папке, нужно указывать путь полностью.

Как сделать зависимые выпадающие списки

Возьмем три именованных диапазона:

Это обязательное условие. Выше описано, как сделать обычный список именованным диапазоном (с помощью «Диспетчера имен»). Помним, что имя не может содержать пробелов и знаков препинания.

  1. Создадим первый выпадающий список, куда войдут названия диапазонов.
  2. Когда поставили курсор в поле «Источник», переходим на лист и выделяем попеременно нужные ячейки.

  3. Теперь создадим второй раскрывающийся список. В нем должны отражаться те слова, которые соответствуют выбранному в первом списке названию. Если «Деревья», то «граб», «дуб» и т.д. Вводим в поле «Источник» функцию вида =ДВССЫЛ(E3). E3 – ячейка с именем первого диапазона.
  4. Выбор нескольких значений из выпадающего списка Excel

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

    1. Создаем стандартный список с помощью инструмента «Проверка данных». Добавляем в исходный код листа готовый макрос. Как это делать, описано выше. С его помощью справа от выпадающего списка будут добавляться выбранные значения.
    2. Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next If Not Intersect(Target, Range("Е2:Е9" )) Is Nothing And Target.Cells.Count = 1 Then Application.EnableEvents = False If Len(Target.Offset(0, 1)) = 0 Then Target.Offset(0, 1) = Target Else Target.End (xlToRight).Offset(0, 1) = Target End If Target.ClearContents Application.EnableEvents = True End If End Sub
    3. Чтобы выбранные значения показывались снизу, вставляем другой код обработчика.
    4. Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next If Not Intersect(Target, Range("Н2:К2" )) Is Nothing And Target.Cells.Count = 1 Then Application.EnableEvents = False If Len(Target.Offset(1, 0)) = 0 Then Target.Offset(1, 0) = Target Else Target.End (xlDown).Offset(1, 0) = Target End If Target.ClearContents Application.EnableEvents = True End If End Sub
    5. Чтобы выбираемые значения отображались в одной ячейке, разделенные любым знаком препинания, применим такой модуль.

    6. Private Sub Worksheet_Change(ByVal Target As Range)
      On Error Resume Next
      If Not Intersect(Target, Range("C2:C5" )) Is Nothing And Target.Cells.Count = 1 Then
      Application.EnableEvents = False
      newVal = Target
      Application.Undo
      oldval = Target
      If Len(oldval) <> 0 And oldval <> newVal Then
      Target = Target & "," & newVal
      Else
      Target = newVal
      End If
      If Len(newVal) = 0 Then Target.ClearContents
      Application.EnableEvents = True
      End If
      End Sub

    Не забываем менять диапазоны на «свои». Списки создаем классическим способом. А всю остальную работу будут делать макросы.

    Выпадающий список с поиском

    При вводе первых букв с клавиатуры высвечиваются подходящие элементы. И это далеко не все приятные моменты данного инструмента. Здесь можно настраивать визуальное представление информации, указывать в качестве источника сразу два столбца.