Excel связанные динамические списки

Связанные (зависимые) выпадающие списки

Способ 1. Функция ДВССЫЛ (INDIRECT)

Этот фокус основан на применении функции ДВССЫЛ (INDIRECT), которая умеет делать одну простую вещь — преобразовывать содержимое любой указанной ячейки в адрес диапазона, который понимает Excel. То есть, если в ячейке лежит текст «А1», то функция выдаст в результате ссылку на ячейку А1. Если в ячейке лежит слово «Маша», то функция выдаст ссылку на именованный диапазон с именем Маша и т.д. Такой, своего рода, «перевод стрелок» ;)

Возьмем, например, вот такой список моделей автомобилей Toyota, Ford и Nissan:

Связанные списки с ДВССЫЛ

Выделим весь список моделей Тойоты (с ячейки А2 и вниз до конца списка) и дадим этому диапазону имя Toyota на вкладке Формулы (Formulas) с помощью Диспетчера имен (Name Manager). Затем повторим то же самое со списками моделей Ford и Nissan, задав соответственно имена диапазонам Ford и Nissan.

При задании имён помните о том, что имена диапазонов в Excel не должны содержать пробелов, знаков препинания и начинаться обязательно с буквы. Поэтому если бы в одной из марок автомобилей присутствовал бы пробел (например Ssang Yong), то его пришлось бы заменить в ячейке и в имени диапазона на нижнее подчеркивание (т.е. Ssang_Yong).

Теперь создадим первый выпадающий список для выбора марки автомобиля. Выделите пустую ячейку (на картинке выше — зелёную) и нажмите кнопку Проверка данных (Data Validation) на вкладке Данные (Data). Затем из выпадающего списка Тип данных (Allow)  выберите вариант Список (List) и в поле Источник (Source) выделите ячейки с названиями марок (желтые ячейки в нашем примере). После нажатия на ОК первый выпадающий список готов.

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

=ДВССЫЛ(F2)

где F2 — адрес ячейки с первым выпадающим списком (замените на свой).

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

Минусы такого способа:

  • Надо руками создавать много именованных диапазонов (если у нас много марок автомобилей).
  • В качестве вторичных (зависимых) диапазонов не могут выступать динамические диапазоны задаваемые формулами типа СМЕЩ (OFFSET). Для первичного (независимого) списка их использовать можно, а вот вторичный список должен быть определен жестко, без формул. Однако, это ограничение можно обойти, создав справочник соответствий марка-модель (см. Способы 3 и 4).
  • Имена вторичных диапазонов должны совпадать с элементами первичного выпадающего списка. Т.е. если в нем есть текст с пробелами, то придется их заменять на подчеркивания с помощью функции ПОДСТАВИТЬ (SUBSTITUTE), т.е. формула будет выглядеть как:

=ДВССЫЛ(ПОДСТАВИТЬ(F2;» «;»_»))

Способ 2. Умные таблицы

Этот подход очень похож на предыдущий, но использует вместо именованных диапазонов — «умные» динамические таблицы, которые будут выступать источником данных для вторичного списка:

Связанные списки на умных таблицах и ДВССЫЛ

Таким образом, мы:

  1. Сначала преобразуем наши справочники в «умные» таблицы, используя сочетание клавиш Ctrl+T или команду Главная — Форматировать как таблицу (Home — Format as Table) и
  2. Даём им имена (Фрукты, Овощи, Зелень) на вкладке Конструктор (Design) в поле Имя таблицы (Table Name).
  3. Создаём первый и второй (связанный) выпадающие списки точно так же, как в предыдущем способе с функцией ДВССЫЛ (INDIRECT).

Главным плюсом и отличием такого способа является возможность легко добавлять новые товары в каждую категорию — динамическая «умная» таблица автоматически расширится, и нам не придется вручную исправлять ссылку на диапазон (как это требуется в предыдущем способе).

Способ 3. Отсортированный справочник

Этот способ требует наличия отсортированного списка соответствий марка-модель вот такого вида:

Связанные списки на отсортированном справочнике

Для создания первичного выпадающего списка можно марок можно воспользоваться обычным способом, описанным выше, т.е.  выбрать на вкладке Данные (Data) команду Проверка данных (Data validation) и указать в качестве источника жёлтые ячейки с марками

А вот для зависимого списка моделей придется создать именованный диапазон с функцией СМЕЩ (OFFSET), который будет динамически ссылаться только на ячейки моделей определенной марки. Для этого:

  • Нажмите сочетание клавиш Ctrl+F3 или воспользуйтесь кнопкой Диспетчер имен (Name manager) на вкладке Формулы (Formulas).
  • Создайте новый именованный диапазон с любым именем (например Модели) и в поле Ссылка (Reference) в нижней части окна введите руками следующую формулу:

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

=OFFSET($A$1;MATCH($G$7;$A:$A;0)-1;1;COUNTIF($A:$A;$G$7);1)

Ссылки должны быть абсолютными (со знаками $). После нажатия Enter к формуле будут автоматически добавлены имена листов — не пугайтесь.

Работает это следующим образом. Функция СМЕЩ (OFFSET) умеет выдавать ссылку на диапазон нужного размера, сдвинутый относительно исходной ячейки на заданное количество строк и столбцов. В более понятном варианте синтаксис этой функции таков:

=СМЕЩ(начальная_ячейка; сдвиг_вниз; сдвиг_вправо; высота_диапазона_в_строках; ширина_диапазона_в_столбцах)

Таким образом:

  • начальная ячейка — берем первую ячейку нашего списка, т.е. А1
  • сдвиг_вниз — нам считает функция ПОИСКПОЗ (MATCH), которая, попросту говоря, выдает порядковый номер ячейки с выбранной маркой (G7) в заданном диапазоне (столбце А)
  • сдвиг_вправо = 1, т.к. мы хотим сослаться на модели в соседнем столбце (В)
  • высота_диапазона_в_строках  — вычисляем с помощью функции СЧЕТЕСЛИ (COUNTIF), которая умеет подсчитать количество встретившихся в списке (столбце А) нужных нам значений — марок авто (G7)
  • ширина_диапазона_в_столбцах = 1, т.к. нам нужен один столбец с моделями

В итоге должно получиться что-то вроде этого:

linked_dropdowns4.gif

Осталось добавить выпадающий список на основе созданной формулы к ячейке G8. Для этого:

  • выделяем ячейку G8 
  • выбираем на вкладке Данные (Data) команду Проверка данных (Data validation)
  • из выпадающего списка выбираем вариант проверки Список (List) и вводим в качестве Источника (Source) знак равно и имя нашего диапазона, т.е.  =Модель

И наш связанный список моделей готов.

Способ 4. Неотсортированный справочник

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

Связанный выпадающий список по неотсортированному справочнику

Первый уровень выпадающего списка (диапазон А2:А14 на рисунке выше) здесь делается классическим образом через команду Данные — Проверка данных — Список (Data — Validation — List) и в качестве источника указать зелёные ячейки с названиями категорий.

А для связанных выпадающих списков во втором столбце (B2:B14) в поле Источник (Source) мы используем хитрую формулу:

=СМЕЩ($E$2;1;ПОИСКПОЗ(A2;$E$2:$G$2;0)-1;СЧЁТЗ(СМЕЩ($E$2;1;ПОИСКПОЗ(A2;$E$2:$G$2;0)-1;10;1));1)

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

 Ссылки по теме

  • 4 способа создать выпадающий список в ячейках листа
  • Автоматическое создание выпадающих списков при помощи инструментов надстройки PLEX
  • Выбор фото из выпадающего списка
  • Выпадающий список с автоматическим удалением уже использованных элементов
  • Динамическая выборка данных для выпадающего списка функциями ИНДЕКС и ПОИСКПОЗ 

Выпадающий список в MS EXCEL на основе Проверки данных

​Смотрите также​ остался. Как выпадающий​ котором строятся линейчатая​ «Мой_список_1» и «Мой_список_2».​и вводим в​или воспользуйтесь кнопкой​ будет выбираться по​ и старше -​формирует ссылку на​ДВССЫЛ (INDIRECT)​ изменения своих размеров,​ Мы воспользуемся функцией​(Диспетчер имён).​ помощью выпадающих списков,​ ссылок на другие​Теперь на листе Пример,​ этот диапазон.​

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

​ Затем формирую в​ качестве​Диспетчер имен (Name manager)​ имени диапазона, выбранного​ это можно сделать​ диапазон с нужными​

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

​Предположим, что элементы списка​ часто необходимо ограничить​

А. Простейший выпадающий список — ввод элементов списка непосредственно в поле Источник

​ он выводил мои​ порядке убывания выводит​ условной ячейке X1​Источника (Source)​на вкладке​ в первом списке.​

​ в меню​​ нам именами и​​ ссылку в настоящую,​ добавлении-удалении в него​(VLOOKUP) для поиска​New​​ пользователям варианты стран​​ или использовать Личную​ которые будут содержать​

​ шт;кг;кв.м;куб.м введены в​ возможность ввода определенным​ даты. Потому что,​ ТОП-3 по значениям​ из названий этих​знак равно и​

​Формулы (Formulas)​Минусы​​Вставка — Имя -​​ использует следующие аргументы:​ живую.​ данных.​ значения из ячейки​(Создать), чтобы добавить​ и городов, из​

​ книгу макросов Personal.xlsx​​ Выпадающий список.​ ячейки диапазона​ списком значений. Например,​ когда я его​ внутри этого месяца.​​ диапазонов список («Проверка​​ имя нашего диапазона,​. В версиях до​такого способа:​ Присвоить (Insert -​A2​
​Осталось только нажать на​
​Выделите диапазон вариантов для​

Б. Ввод элементов списка в диапазон (на том же листе, что и выпадающий список)

​B1​ новый именованный диапазон.​ которых они могут​ или Надстройки.​вызываем Проверку данных;​A1:A4​ имеется ячейка, куда​ делаю, по вашему​

​ ( Январь 2009​ данных» —> «Список»​ т.е.​​ 2003 это была​​В качестве вторичных (зависимых)​ Name — Define).​

​- начальная ячейка​​ОК​ выпадающего списка (A1:A5​в таблице с​ Откроется диалоговое окно​ выбирать. В первой​
​Если нет желания присваивать​​в поле Источник вводим​, тогда поле Источник​ пользователь должен внести​ примеру — у​ ….. Коля -​ ;) . В​=Модели​ команда меню​​ диапазонов не могут​​В Excel 2007​0​. Если теперь дописать​ в нашем примере​ названиями стран. После​New Name​ ячейке мы сделаем​ имя диапазону в​ ссылку на созданное​

​ будет содержать =лист1!$A$1:$A$4​ название департамента, указав​ меня выводятся цифры​ 5, Саша-4, Егор​ условной ячейке Y1​Вуаля!​Вставка — Имя -​ выступать динамические диапазоны​ и новее -​- сдвиг начальной​ к нашей таблице​

​ выше) и на​ того как индекс​(Создание имени).​ выбор страны, а​ файле Источник.xlsx, то​

B. Ввод элементов списка в диапазон (на любом листе)

​ имя: =Список_элементов.​Преимущество​ где он работает.​ (видимо порядковый номер​ -2).​ я хочу получить​

​4 способа создать выпадающий​ Присвоить (Insert -​ задаваемые формулами типа​ на вкладке​

​ ячейки по вертикали​ новые элементы, то​Главной (Home)​ будет известен, мы​В поле​

​ во второй будут​ формулу нужно изменить​Примечание​: наглядность перечня элементов​ Логично, предварительно создать​ ячейки)​Форум весь обрыл,​ список данных соответствующего​

​ список в ячейках​
​ Name — Define)​СМЕЩ (OFFSET)​Формулы (Formulas)​​ вниз на заданное​​ они будут автоматически​
​вкладке нажмите кнопку​

  • ​ выберем список, который​​Name​​ доступны только принадлежащие​
  • ​ на =ДВССЫЛ(«[Источник.xlsx]лист1!$A$1:$A$4»)​Если предполагается, что​
  • ​ и простота его​ список департаментов организации​AlexM​

​ такого нет. У​ именованного диапазона, выбранного​ листа​Создайте новый именованный диапазон​

  • ​. Для первичного (независимого)​
  • ​с помощью​ количество строк​ в нее включены,​

​Форматировать как таблицу (Home​
​ станет источником данных​(Имя) введите имя​ выбранной стране города.​СОВЕТ:​ перечень элементов будет​​ модификации. Подход годится​​ и позволить пользователю​: Если числа (не​ меня еще не​ мной в ячейке​

​Автоматическое создание выпадающих списков​ с любым именем​ списка их использовать​Диспетчера имен (Name Manager)​0​ а значит -​ — Format as​ для нашего второго​

​Country​ Думаю, это понятно?​Если на листе​​ дополняться, то можно​​ для редко изменяющихся​ лишь выбирать значения​ цифры) 5-и значные,​ получается сделать выпадающий​ X1. Для этого​

​ при помощи инструментов​

​ (например​ можно, а вот​. Затем повторим то​- сдвиг начальной​ добавятся к нашему​ Table)​ выпадающего списка. Для​для нашего первого​Итак, давайте начнём наш​ много ячеек с​ сразу выделить диапазон​

​ списков.​​ из этого списка.​ то это и​ список, потому что​ я в ячейку​ надстройки PLEX​Модели​

​ вторичный список должен​ же самое со​ ячейки по горизонтали​

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

  • ​ большего размера, например,​Недостатки​
  • ​ Этот подход поможет​ есть дата.​ все примеры показаны​ Y1 добавляю проверку​
  • ​Выбор фото из выпадающего​) и в поле​ быть определен жестко,​
  • ​ списками Форд и​ вправо на заданное​ удалением — то​ любой — это​

​ формулу:​ в поле​ того, как можно​ то можно использовать​А1:А10​: если добавляются новые​ ускорить процесс ввода​Установите формат дата​ где выбор значения​ данных со формулой​ списка​Ссылка (Reference)​ без формул. Однако,​ Ниссан, задав соответственно​

​ количество столбцов​ же самое.​ роли не играет:​=CHOOSE(VLOOKUP(B1,Sheet3!$A$3:$B$5,2,FALSE),England,France,Portugal)​Refers to​

​ создать связанный (или​
​ инструмент Выделение группы​. Однако, в этом​ элементы, то приходится​ и уменьшить количество​ для ячейки с​ идет по строкам…​ =ДВССЫЛ(X1). В ячейке​Выпадающий список с автоматическим​в нижней части​ это ограничение можно​ имена диапазонам​СЧЁТЗ(A2:A100)​Если вам лень возиться​Обратите внимание на то,​=ВЫБОР(ВПР(B1;Sheet3!$A$3:$B$5;2;ЛОЖЬ);England;France;Portugal)​(Диапазон) выберите тот,​ зависимый) выпадающий список​ ячеек (Главная/ Найти​ случае Выпадающий список​ вручную изменять ссылку​ опечаток.​ выпадающим списком.​ а у меня​ Y1 получаю не​ удалением уже использованных​ окна введите руками​

​ обойти, создав отсортированный​​Ford​
​- размер получаемого​ с вводом формулы​ что таблица должна​Что же делает эта​ в котором хранится​ в Excel? В​ и выделить/ Выделение​ может содержать пустые​ на диапазон. Правда,​Выпадающий список можно создать​OLEGOFF​

​ одна строка и​ заветный список, а​ элементов​ следующую формулу:​ список соответствий марка-модель​и​ на выходе диапазона​ ДВССЫЛ, то можно​ иметь строку заголовка​ формула? Она ищет​ список стран:​

​ ячейке​ группы ячеек). Опция​ строки.​ в качестве источника​ с помощью Проверки​: Можно еще отформатировать​ много столбцов.​ «пшик»… При проверке​Динамическая выборка данных для​=СМЕЩ($A$1;ПОИСКПОЗ($G$7;$A:$A;0)-1;1;СЧЁТЕСЛИ($A:$A;$G$7);1)​ (см. Способ 2).​Nissan​ по вертикали, т.е.​ чуть упростить процесс.​ (в нашем случае​ значение из ячейки​=Sheet3!$A$3:$A$5​B1​

excel2.ru

Создаем связанные выпадающие списки в Excel – самый простой способ!

​ Проверка данных этого​​Избавиться от пустых строк​ можно определить сразу​ данных ​ ячейки и установить​AlexM​ формулы в обычной​ выпадающего списка функциями​=OFFSET($A$1;MATCH($G$7;$A:$A;0)-1;1;COUNTIF($A:$A;$G$7);1)​Имена вторичных диапазонов должны​.​ столько строк, сколько​ После создания умной​ это А1 со​B1​Нажмите​мы будем выбирать​ инструмента позволяет выделить​ и учесть новые​

​ более широкий диапазон,​или с помощью элемента​ цвет ячеек и​: Сделал как понял​ ячейке получаю ошибку​ ИНДЕКС и ПОИСКПОЗ​Ссылки должны быть абсолютными​​ совпадать с элементами​​При задании имен помните​ у нас занятых​ таблицы просто выделите​​ словом​​в списке стран​ОК​ страну, а в​

Связанный выпадающий список в Excel

​ ячейки, для которых​ элементы перечня позволяет​ например,​ управления формы Поле​ шрифта белый.Тогда их​reafantu​ вычисления:​SagRU​ (со знаками $).​ первичного выпадающего списка.​ о том, что​ ячеек в списке​ мышью диапазон с​Сотрудники​​ и возвращает соответствующий​​, чтобы сохранить и​​ ячейке​​ проводится проверка допустимости​​ Динамический диапазон. Для​​A1:A100​ со списком (см.​​ не будет видно​​: Спасибо, но немного​​=ДВССЫЛ(​​: Здравствуйте.​ После нажатия Enter​​ Т.е. если в​​ имена диапазонов в​1​ элементами для выпадающего​

Связанный выпадающий список в Excel

​). Первая ячейка играет​ индекс, который затем​ закрыть диалоговое окно.​B2​ данных (заданная с​ этого при создании​. Но, тогда выпадающий​ статью Выпадающий (раскрывающийся)​reafantu​ не то, так​»Мой_список_2″​Пытаюсь создать динамический​ к формуле будут​

​ нем есть текст​ Excel не должны​- размер получаемого​ списка (A2:A5) и​ роль «шапки» и​ использует функция​Имена диапазонам, содержащим города,​– принадлежащий ей​ помощью команды Данные/​ Имени Список_элементов в​​ список может содержать​​ список на основе​​: Спасибо. Но я​​ как рейтинг должен​)​ выпадающий список (не​​ автоматически добавлены имена​​ с пробелами, то​

Связанный выпадающий список в Excel

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

Связанный выпадающий список в Excel

​ Работа с данными/​​ поле Диапазон необходимо​​ пустые строки (если,​​ элемента управления формы).​​ видимо какой-то тупой…​ быть в виде​В чем может​​ учитывающий пустые строки,​​ листов — не​ придется их заменять​ препинания и начинаться​

​ по горизонтали, т.е.​

​ адреса имя для​​ На появившейся после​​(ВЫБОР), чтобы выбрать​ таким же образом.​

Связанный выпадающий список в Excel

​ примере:​ Проверка данных). При​ записать формулу =СМЕЩ(Список!$A$1;;;СЧЁТЗ(Список!$A:$A))​

​ например, часть элементов​В этой статье создадим​ У вас отображается​ линейчатой диаграммы и​ быть проблема?​​ но позволяющий дополнять​​ пугайтесь :)​ на подчеркивания с​ обязательно с буквы.​​ один столбец​​ этого диапазона (без​​ превращения в Таблицу​​ 1-й, 2-й или​Теперь мы можем создать​Для начала нужно создать​​ выборе переключателя Всех​​Использование функции СЧЁТЗ() предполагает,​

Связанный выпадающий список в Excel

​ была удалена или​​ Выпадающий список с​​ прям в стиле​

Связанный выпадающий список в Excel

​ выпадающий список должен​Михаил С.​ себя новыми значениями).​Функция​​ помощью функции​​ Поэтому если бы​​Теперь выделите ячейки, где​​ пробелов), например​ вкладке​​ 3-й именованный диапазон.​​ выпадающие списки в​ базу данных. На​ будут выделены все​ что заполнение диапазона​ список только что​​ помощью Проверки данных​​ форматирования, как на​ быть динамическим​:​ Создаю именованный диапазон​СМЕЩ (OFFSET)​ПОДСТАВИТЬ (SUBSTITUTE)​ в одной из​​ вы хотите создать​​Стажеры,​Конструктор (Design)​Вот так будет выглядеть​ тех ячейках, где​ втором листе я​ такие ячейки. При​ ячеек (​ был создан). Чтобы​ (Данные/ Работа с​​ листе Данные. А​​AlexM​ДВССЫЛ()​ с такой формулой:​​умеет выдавать ссылку​​, т.е. формула будет​ марок автомобилей присутствовал​ выпадающие списки, и​​и нажмите на​​можно изменить стандартное​ наш второй раскрывающийся​​ планировали выбирать данные.​​ занес список стран,​ выборе опции Этих​A:A​ пустые строки исчезли​ данными/ Проверка данных)​ когда я сам​: Из примера не​не работает с​=ДВССЫЛ(СЦЕПИТЬ(«Данные!A2:»;»A»;СТРОКА(ИНДЕКС($A$2:$A$10;СЧЁТЗ($A$2:$A$10)))-1))​ на диапазон нужного​

​ выглядеть как =ДВССЫЛ(ПОДСТАВИТЬ(F3;"​
​ бы пробел (например​

​ выберите в старых​Enter​ имя таблицы на​​ список:​​ Выделите ячейку​ которые хочу дать​ же выделяются только​), который содержит элементы,​​ необходимо сохранить файл.​​ с типом данных​ делаю, то у​ понятно что вы​

​ динамическими диапазонами.​Список не работает.​ размера, сдвинутый относительно​

Связанный выпадающий список в Excel

​ «;»_»))​ Ssang Yong), то​ версиях Excel в​:​ свое (без пробелов!).​​В результате мы получим​​B1​ пользователям на выбор​ те ячейки, для​ ведется без пропусков​

Связанный выпадающий список в Excel

​Второй недостаток: диапазон источника​ Список.​ меня выходит 1​ имеете ввиду под​Rustem Haziev​ Подскажите, пожалуйста, что​ исходной ячейки на​Надо руками создавать много​ его пришлось бы​

​ меню​Фактически, этим мы создаем​
​ По этому имени​
​ два связанных (или​

​(в ней мы​

office-guru.ru

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

​ в первом раскрывающемся​​ которых установлены те​ строк (см. файл​ должен располагаться на​Выпадающий список можно сформировать​ января 2009 г.​ словом динамический.​: Посмотрите здесь (много​ я делаю не​ заданное количество строк​ именованных диапазонов (если​ заменить в ячейке​Данные — Проверка (Data​ именованный динамический диапазон,​ мы сможем потом​ зависимых) выпадающих списка.​

Excel выпадающий список динамический

Способ 1. Если у вас Excel 2007 или новее

​ будем выбирать страну),​ списке, а в​ же правила проверки​ примера, лист Динамический​ том же листе,​ по разному.​AlexM​В вашем сообщении​ примеров с выпадающими​ так (пример файла​ и столбцов. В​ у нас много​ и в имени​ — Validation)​ который ссылается на​ адресоваться к таблице​ Если мы выбираем​ откройте вкладку​ соседнем столбце указал​

​ данных, что и​ диапазон).​ что и выпадающий​Самым простым способом создания​​: Либо вы устанавливаете​​ два вопроса, выпадающий​​ списками)…​ во вложении).​ более понятном варианте​​ марок автомобилей).​ диапазона на нижнее​. В открывшемся окне​

Excel выпадающий список динамический

​ данные из нашей​ на любом листе​ страну​Data​ числовой индекс, который​ для активной ячейки.​​Используем функцию ДВССЫЛ()​​ список, т.к. для​ Выпадающего списка является​ формат дата тип​ список и диаграмма.​С.М.​ber$erk​​ синтаксис этой функции​​Этот способ требует наличия​ подчеркивание (т.е. Ssang_Yong).​ на вкладке​ умной таблицы. Теперь​ этой книги:​France​(Данные), нажмите​ соответствует одному из​

Excel выпадающий список динамический

​Примечание​Альтернативным способом ссылки на​ правил Проверки данных нельзя​ ввод элементов списка​ «Март 2009», либо​Отвечал на первый​: Вот:​: Здесь ( )​​ таков:​ отсортированного списка соответствий​​Теперь создадим первый выпадающий​Параметры (Settings)​​ имя этого диапазона​​Теперь выделите ячейки где​​, в связанном списке​ ​Data Validation​​ списков городов. Списки​:​​ перечень элементов, расположенных​​ использовать ссылки на​​ непосредственно в поле​​ копируете ячейку с​ вопрос. Выпадающий список​​SagRU​​ смотрели?​

Excel выпадающий список динамический

​=СМЕЩ(начальная_ячейка; сдвиг_вниз; сдвиг_вправо; размер_диапазона_в_строках;​

​ марка-модель вот такого​

​ список для выбора​выберите вариант​​ можно ввести в​​ вы хотите создать​ у нас будут​(Проверка данных), а​ городов располагаются правее​Если выпадающий список​ на другом листе,​ другие листы или​ Источник инструмента Проверка​ датой на листе​​ выводит имена трех​​:​SagRU​ размер_диапазона_в_столбцах)​ вида:​ марки автомобиля. Выделите​Список (List)​ окне создания выпадающего​ выпадающие списки (в​ города только из​​ затем в выпадающем​​ в столбцах​ содержит более 25-30​ является использование функции​

​ книги (это справедливо​​ данных.​​ «данные» и специальной​ человек с максимальными​Rustem Haziev​: Да, разумеется -​Таким образом:​Для создания первичного выпадающего​ пустую ячейку и​и введите в​ списка в поле​ нашем примере выше​

​ Франции.​ меню выберите​D​ значений, то работать​ ДВССЫЛ(). На листе​ для EXCEL 2007​Предположим, в ячейке​ вставкой вставляете в​ значениями по убыванию.​, буду изучать, спасибо​ «Выпадающий список с​начальная ячейка — берем​ списка можно марок​​ откройте меню​​ поле​​Источник (Source)​​ — это D2)​

Excel выпадающий список динамический

​Из этой статьи Вы​Data Validation​,​ с ним становится​ Пример, выделяем диапазон​ и более ранних).​B1​ ячейку с выпадающим​ Рядом с именами​​ за ссылку.​​ наполнением». Мне описанный​

Excel выпадающий список динамический

Способ 2. Если у вас Excel 2003 или старше

​ первую ячейку нашего​ можно воспользоваться обычным​Данные — Проверка (Data​Источник (Source)​:​ и выберите в​ узнали, как можно​(Проверка данных).​F​​ неудобно. Выпадающий список​​ ячеек, которые будут​Избавимся сначала от второго​необходимо создать выпадающий​

​ списком «форматы»​​ с помощью ПОИСКПОЗ()​С.М., большое спасибо!​ там вариант не​​ списка, т.е. А1​​ способом, описанным выше,​​ — Validation)​вот такую формулу:​​В старых версиях Excel​​ старых версиях Excel​ сделать простейшие связанные​Откроется диалоговое окно​и​ одновременно отображает только​​ содержать выпадающий список,​​ недостатка – разместим​​ список для ввода​​reafantu​ и ИНДЕКС() можно​

Excel выпадающий список динамический

​ Остается, впрочем, одна​

​ подходит, так как​

​сдвиг_вниз — нам считает​​ т.е.​​или нажмите кнопку​=Люди​ до 2007 года​ в меню​ выпадающие списки в​Data Validation​​H​​ 8 элементов, а​ вызываем Проверку данных,​ перечень элементов выпадающего​ единиц измерений. Выделим​

  • ​: Спасибо огромное! вы​​ получить соответствующие значения.​
  • ​ проблема. Диапазон «Табл.1″​​ список пополняется не​ функция​дать имя диапазону D1:D3​Проверка данных (Data Validation)​
  • ​После нажатия на​​ не было замечательных​Данные — Проверка (Data​ Microsoft Excel. Вы​(Проверка вводимых значений).​
  • ​. Так, например, рядом​​ чтобы увидеть остальные,​ в Источнике указываем​ списка на другом​ ячейку​ меня очень выручили!​reafantu​
  • ​ имеет фиксированные границы,​​ мануально, а при​ПОИСКПОЗ (MATCH)​ (например​на вкладке​

​ОК​ «умных таблиц», поэтому​ — Validation)​ можете взять этот​Мы хотим дать пользователю​ с​​ нужно пользоваться полосой​ =ДВССЫЛ(«список!A1:A4»).​​ листе.​B1​​ и поняли​​: Динамический список, значит​​ а у меня​​ помощи формулы. Иначе​, которая, попросту говоря,​​Марки​​Данные (Data)​

​ваш динамический список​

​ придется их имитировать​​, а в новых​​ простой пример и​ на выбор список​France​

planetaexcel.ru

Связанные (зависимые) выпадающие списки

Способ 1. Функция ДВССЫЛ (INDIRECT)

​ прокрутки, что не​Недостаток​​В правилах Проверки данных (также​​и вызовем Проверку​и вот последний​ при появлении нового​ на практике возможна​ говоря, умная таблица​ выдает порядковый номер​) с помощью​если у вас​ в выделенных ячейках​ своими силами. Это​ нажмите кнопку​ использовать его для​ вариантов, поэтому в​стоит индекс​ всегда удобно.​: при переименовании листа​ как и Условного​​ данных.​​ вопрос… не знал,​ месяца, он должен​ ситуация, когда добавляются​

​ не «видит» новые​ ячейки с выбранной​Диспетчера имен (Name Manager)​ Excel 2007 или​

Excel выпадающий список динамический

​ готов к работе.​ можно сделать с​Проверка данных (Data Validation)​ решения реальных задач.​ поле​2​​В EXCEL не предусмотрена​​ – формула перестает​ форматирования) нельзя впрямую​Если в поле Источник​ что пригодится​​ автоматически попадать в​ ещё другие группы​ элементы.​​ маркой (G7) в​с вкладки​ новее. Затем из​​Этот фокус основан на​​ помощью именованного диапазона​​на вкладке​​Урок подготовлен для Вас​Allow​, который соответствует списку​ регулировка размера шрифта​ работать. Как это​​ указать ссылку на​​ указать через точку​​Например появляется такие​​ выпадающий список. При​

​ (четвертая, пятая и​V​ заданном диапазоне (столбце​Формулы (Formulas)​ выпадающего списка​ применении функции​ и функции​Данные​ командой сайта office-guru.ru​(Тип данных) выберите​ городов​ Выпадающего списка. При​ можно частично обойти​ диапазоны другого листа​ с запятой единицы​ строки как Мужчины​ выборе месяца в​

​ т.д.). Попытался обойти​: по вашему примеру:​ А)​или в старых​Тип данных (Allow)​​ДВССЫЛ (INDIRECT)​СМЕЩ (OFFSET)​​(Data)​​Источник: http://www.excel-user.com/2011/02/cascading-validation-lists.html​​List​​2​​ большом количестве элементов​ см. в статье​ (см. Файл примера):​ измерения шт;кг;кв.м;куб.м, то​​ и Женщины, приложил​​ выпадающем списке должен​​ проблему, поменяв значение​​ в формулах откуда​​сдвиг_вправо = 1, т.к.​​ версиях Excel -​выберите вариант​, которая умеет делать​, которая умеет выдавать​. В открывшемся окне​​Перевел: Антон Андронов​​(Список). Это активирует​. Позже Вы увидите,​

Excel выпадающий список динамический

​ имеет смысл сортировать​ Определяем имя листа.​Пусть ячейки, которые должны​ выбор будет ограничен​ файл. Как избежать​ автоматически строится график​ диапазона «Табл.1» на​​ то появилось имя​​ мы хотим сослаться​​ через меню​​Список (List)​ одну простую вещь​

​ ссылку на динамический​

​ на вкладке​

​Автор: Антон Андронов​ поле​ как этот индекс​ список элементов и​

​Ввод элементов списка в​​ содержать Выпадающий список,​​ этими четырьмя значениями.​ их попадания в​ (линейчатая диаграмма с​ такое:​

​ листа «Группы!» хотя​​ на модели в​

  • ​Вставка — Имя -​и в поле​ — преобразовывать содержимое​ диапазон заданного размера.​​Параметры (Settings)​​Задача​Source​ будет использован.​ использовать дополнительную классификацию​ диапазон ячеек, находящегося​ размещены на листе​Теперь смотрим, что получилось.​ рейтинг, так как​ ТОП-3 Именами по​Данные!$A$1:АДРЕС(11;(СЧЁТЗ(A1:R1)))​
  • ​ такого у вас​ соседнем столбце (В)​ Присвоить (Insert -​Источник (Source)​ любой указанной ячейки​Откройте меню​выберите вариант​: создать в ячейке​(Источник), где необходимо​​Если Вы работаете в​​ элементов (т.е. один​ в другой книге​ Пример,​
  • ​ Выделим ячейку​ по условию он​ убыванию значений)​Но Excel не​

Способ 2. Список соответствий и функции СМЕЩ (OFFSET) и ПОИСКПОЗ (MATCH)

​ нет и -1​размер_диапазона_в_строках — вычисляем с​ Name — Define)​выделите ячейки с​

Excel выпадающий список динамический

​ в адрес диапазона,​Вставка — Имя -​Список (List)​ выпадающий список для​ указать имя диапазона​

  • ​ Excel 2010, то​ выпадающий список разбить​​Если необходимо перенести диапазон​​а диапазон с перечнем​​B1​​ должен строится лишь​​AlexM​​ распознает вторую часть​ лишнее.​ помощью функции​​выбрать на вкладке​ названиями марок (желтые​ который понимает Excel.​
  • ​ Присвоить (Insert -​​и введите в​​ удобного ввода информации.​​ со странами. Введите​
  • ​ можете создать лист-источник​ на 2 и​​ с элементами выпадающего​​ элементов разместим на​. При выделении ячейки​​ по именам.​ ​: Так?​​ диапазона. Вариант СЦЕПИТЬ​»Выпадающий список с​СЧЕТЕСЛИ (COUNTIF)​Данные (Data)​ ячейки в нашем​

​ То есть, если​ Name — Define)​ поле​ Варианты для списка​​ в этом поле​ ​ в отдельной рабочей​​ более).​ списка в другую​ другом листе (на​ справа от ячейки​

  • ​AlexM​​reafantu​​ + ДВССЫЛ приводит​​ наполнением». способ 2​​, которая умеет подсчитать​​команду​​ примере). После нажатия​ в ячейке лежит​или нажмите​​Источник (Source)​ должны браться из​ «=Country» и жмите​
  • ​ книге. Если же​Например, чтобы эффективно работать​ книгу (например, в​​ листе Список в​​ появляется квадратная кнопка​​: Кажется получилось.​​: Да! Почти так.​ в тупик, так​ должен подойти.​

​ количество встретившихся в​

​Проверка данных (Data validation)​

​ на​ текст «А1», то​Ctrl+F3​вот такую формулу:​ заданного динамического диапазона,​ОК​ у Вас версия​

​ со списком сотрудников​​ книгу Источник.xlsx), то​​ файле примера).​ со стрелкой для​PS. не цитируйте​ Только данные для​ как ДВССЫЛ, как​ber$erk​ списке (столбце А)​выбрать из выпадающего списка​ОК​

​ функция выдаст в​. В открывшемся окне​

​=ДВССЫЛ(«Таблица1[Сотрудники]»)​

  • ​ т.е. если завтра​. Теперь нам нужно​ Excel 2003 года,​
  • ​ насчитывающем более 300​ нужно сделать следующее:​​Для создания выпадающего списка,​​ выбора элементов из​ полностью мои сообщения.​ таблицы необходимо брать​ выяснилось, не оперирует​: что то я​ нужных нам значений​
  • ​ вариант проверки​первый выпадающий список​ результате ссылку на​ нажмите кнопку​
  • ​=INDIRECT(«Таблица1[Сотрудники]»)​ в него внесут​​ сделать второй раскрывающийся​​ и Вы планируете​ сотрудников, то его​в книге Источник.xlsx создайте​ элементы которого расположены​ выпадающего списка.​ Зачем мне и​
  • ​ из начальной таблицы​ с динамическими диапазонами:​ Вас не пойму.​

​ — марок авто​Список (List)​

Excel выпадающий список динамический

​ готов:​ ячейку А1. Если​Добавить (New)​Смысл этой формулы прост.​

  • ​ изменения — например,​
  • ​ список, чтобы пользователи​​ использовать именованный диапазон,​​ следует сначала отсортировать​​ необходимый перечень элементов;​​ на другом листе,​​Недостатки​ другим их перечитывать​
  • ​ (лист Данные) и​ДВССЫЛ(СЦЕПИТЬ(«Данные!$A$1″;»:»;АДРЕС(11;(СЧЁТЗ(A1:R1)))))​​ А это?​​ (G7)​и указать в​​Теперь создадим второй выпадающий​​ в ячейке лежит​, введите имя диапазона​ Выражение​​ удалят ненужные элементы​

​ могли выбрать город.​

Ссылки по теме

  • ​ то значения должны​ в алфавитном порядке.​в книге Источник.xlsx диапазону​
  • ​ можно использовать два​этого подхода: элементы​reafantu​
  • ​ сам рейтинг не​Те же грабли,​
  • ​V​размер_диапазона_в_столбцах = 1, т.к.​ качестве​
  • ​ список, в котором​ слово «Маша», то​ (любое, но без​

planetaexcel.ru

Формирование динамического выпадающего списка

​Таблица1[Сотрудники]​​ или допишут еще​
​ Мы поместим этот​ находиться в той​ Затем создать выпадающий​ ячеек содержащему перечень​ подхода. Один основан​ списка легко потерять​: Спасибо! но есть​
​ должен выводится на​
​ в общем. Никогда​: вариант одна формула​ нам нужен один​Источника (Source)​ будут отображаться модели​

​ функция выдаст ссылку​​ пробелов и начинающееся​- это ссылка​

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

​=Марки​​ выбранной в первом​ на именованный диапазон​ с буквы, например​ на столбец с​ они должны автоматически​ ячейку​ на другом листе.​
​ алфавита. Второй выпадающий​ например СписокВнеш;​ диапазона, другой –​

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

​ списка.​​В итоге должно получиться​или просто выделить​ списке марки. Также​
​ с именем​

​ -​​ данными для списка​ отразиться в выпадающем​
​B2​
​Мы будем использовать именованные​ список должен содержать​откройте книгу, в которой​ функции ДВССЫЛ().​ ячейку​
​ одинаковое самое большое​ и диаграмма (при​ на таких мелочах​=СМЕЩ(Данные!$A$1;1;ПОИСКПОЗ(Расчет!$A2;Данные!$A$1:$C$1;0)-1;СЧЁТЗ(ИНДЕКС(Данные!$A$1:$C$10;;ПОИСКПОЗ(Расчет!$A2;Данные!$A$1:$C$1;0)))-1;1)​
​ что-то вроде этого:​
​ ячейки D1:D3 (если​ как в предыдущем​Маша​Люди​ из нашей умной​ списке:​. А теперь внимание​ диапазоны и сделаем​ только те фамилии,​ предполагается разместить ячейки​Используем именованный диапазон​B1​ значение, то он​ выборе месяца).​ как динамические списки…​SagRU​Осталось добавить выпадающий список​ они на том​ случае, откройте окно​и т.д. Такой,​) и в поле​ таблицы. Но проблема​Простой и удобный способ​ – фокус! Нам​
​ так, чтобы эти​​ которые начинаются с​​ с выпадающим списком;​
​Создадим Именованный диапазон Список_элементов,​); не удобно вводить​

​ Бдуте выводить его​​AlexM​​[CENTER] =======================================[/CENTER]​​: ber$erk, вот это​ на основе созданной​

​ же листе, где​​Проверки данных​ своего рода, «перевод​Ссылка (Reference)​

​ в том, что​​ почти без формул.​

​ нужно проверить содержимое​​ связанные выпадающие списки​​ буквы, выбранной первым​​выделите нужный диапазон ячеек,​ содержащий перечень элементов​
​ большое количество элементов.​ в рейтинг на​: Самый простой способ,​В общем, решил​ работает, спасибо:​ формулы к ячейке​ список).​, но в поле​ стрелок» ;)​введите вот такую​ Excel почему-то не​ Использует новую возможность​ ячейки с названием​
​ работали во всех​
​ списком. Для решения​ вызовите инструмент Проверка​ выпадающего списка (ячейки​ Подход годится для​ все места. Т.е​ это надвинуть диаграмму​ все проблемы только​=СМЕЩ(Лист1!$A$1;0;0;СЧЁТЗ(Лист1!$A$1:$A$24);1)​
​ G8. Для этого:​
​А вот для зависимого​Источник​Возьмем, например, вот такой​ формулу:​ хочет понимать прямых​ последних версий Microsoft​
​ страны (ячейка B1),​
​ версиях Excel. Следующий​ такой задачи может​ данных, в поле​:)​A1:A4​

​ маленьких (3-5 значений)​​ например Маша 54,​

planetaexcel.ru

Динамический выпадающий список с диаграмами

​ на данные, т.е.​​ . Слава костылям​Спасибо, но это​
​выделяем ячейку G8​ списка моделей придется​нужно будет ввести​ список моделей автомобилей​=СМЕЩ(A2;0;0;СЧЁТЗ(A2:A100);1)​ ссылок в поле​ Excel начиная с​ чтобы получить индекс​ шаг – создать​ быть использована структура​ Источник укажите =ДВССЫЛ(«[Источник.xlsx]лист1!СписокВнеш»);​на листе Список).​ неизменных списков.​
​ Маша 54, Маша​ на диапазон А2:В4​!​ слишком сложный вариант,​выбираем на вкладке​ создать именованный диапазон​ вот такую формулу:​ Toyota, Ford и​=OFFSET(A2;0;0;COUNTA(A2:A100);1)​Источник (Source)​ 2007 версии -​

​ соответствующий базе данных​​ именованные диапазоны для​

​ Связанный список или​​При работе с перечнем​Для этого:​Преимущество​ 54.. а а​Сформировать формулами диапазоны​С.М.​ так как в​

​Данные (Data)​​ с функцией​=ДВССЫЛ(F3)​ Nissan:​Функция​
​, т.е. нельзя написать​ «Умные Таблицы». Суть​ с городами. Если​
​ наших списков. На​ Вложенный связанный список.​ элементов, расположенным в​выделяем​: быстрота создания списка.​ кроме Маши, Олег​ данных для источников​: Вот-2:​ реальности таких списков​

​команду​​СМЕЩ​или =INDIRECT(F3)​Выделим весь список моделей​СЧЁТЗ (COUNTA)​ в поле Источник​ его в том,​ пользователь выберет​ вкладке​ПРЕДСТАВЬТЕ СИТУАЦИЮ:​ другой книге, файл​А1:А4​

​Элементы для выпадающего списка​​ и Иван тоже​

​ построения диаграммы задача​​reafantu​ 38.​Проверка данных (Data validation)​(OFFSET)​где F3 — адрес​ Тойоты (с ячейки​подсчитывает количество непустых​ выражение вида =Таблица1[Сотрудники].​ что любой диапазон​Portugal​Formulas​

​Мы хотим создать​​ Источник.xlsx должен быть​,​ можно разместить в​ 54​
​ большая.​: Есть примерный диапазон​Возник другой вопрос.​или в меню​

​, который будет динамически​​ ячейки с первым​ А2 и вниз​
​ ячеек в столбце​ Поэтому мы идем​ можно выделить и​, то мы должны​(Формулы) есть команда​ в Excel небольшую​ открыт и находиться​нажимаем Формулы/ Определенные имена/​ диапазоне на листе​А Вы бы​reafantu​ данных.​

​ Например, я создаю​​Данные — Проверка (Data​ ссылаться только на​ выпадающим списком (замените​ до конца списка)​
​ с фамилиями, т.е.​ на тактическую хитрость​ отформатировать как Таблицу.​

​ обратиться к базе​​Name Manager​ табличку, где можно​ в той же​ Присвоить имя​ EXCEL, а затем​

​ посмотрели ответы на​​: Да кстати, можно​Необходимо, чтобы на​ два разных списка​ — Validation)​ ячейки моделей определенной​ на свой).​ и дадим этому​ количество строк в​ — вводим ссылку​ Тогда он превращается,​

​ с индексом​​(Диспетчер имён). Нажав​ выбрать страну и​ папке, иначе необходимо​в поле Имя вводим​ в поле Источник​ всех форумах, где​ и надвинуть.. Спасибо​ отдельном листе был​ по способу​

​из выпадающего списка выбираем​​ марки. Для этого:​Все. После нажатия на​ диапазону имя​
​ диапазоне для выпадающего​ как текст (в​ упрощенно говоря, в​
​3​ на нее, откроется​ соответствующий ей город.​ указывать полный путь​ Список_элементов, в поле​ инструмента Проверки данных​ запостили, глядишь и​Вот у меня​ динамический выпадающий список​

​=СМЕЩ(Лист1!$A$1;0;0;СЧЁТЗ(Лист1!$A$1:$A$24);1)​​ вариант проверки​
​Нажмите​ОК​Toyota​ списка. Функция​

​ кавычках) и используем​​ «резиновый», то есть​, в которой хранятся​ диалоговое окно​ При этом с​ к файлу. Вообще​ Область выбираем Книга;​ указать ссылку на​ решение бы нашлось​ только один вопрос​ (по месяцам), при​и называю их​Список (List)​Ctrl+F3​содержимое второго списка​

​. В Excel 2003​СМЕЩ (OFFSET)​ функцию​ сам начинает отслеживать​ названия городов Португалии.​

CyberForum.ru

​Name Manager​

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

Введение

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

Рассмотрим особенности создания выпадающих списков на примере:

Исходные данные:

  • Список адресов в разных городах

Задача:

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

Визуализация задачи

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

Скачать файлы из этой статьи

Рабочие файлы

Обзорное видео о работе с выпадающими списками в Excel и Google таблицах смотрите ниже. Приятного просмотра!

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

Выбираем ячейку, в которой будем создавать выпадающий список. Далее переходим к инструменту «Проверка данных», тип данных – «Список». В поле «Источник» указываем диапазон списка.

Указываем диапазон с данными для выпадающего списка

Выпадающий список готов!

Простой выпадающий список готов

Такой способ позволяет представить обычный диапазон в виде выпадающего списка. Повторы данных остались в списке (в диапазоне A2:A16 названия городов повторяются и в выпадающем списке они также повторяются). Это, конечно, не удобно. О том, как сделать выпадающий список уникальных значений в Excel мы поговорим далее, пока остановимся на этом варианте.

Как создать зависимый выпадающий список в Excel?

Существует несколько вариантов. Один из них, это сочетание именованных диапазонов и функции ДВССЫЛ.

Именованный диапазон в Excel – это ячейка (или диапазон ячеек), которой присвоено имя.

Функция ДВССЫЛ в Excel преобразовывает текст в ссылку.

Способ 1: именованные диапазоны + функция ДВССЫЛ

Для начала создадим именованные диапазоны с адресами. Имя каждому присвоим в соответствии с городом.

Алгоритм создания именованного диапазона: выделяем диапазон, далее «Формулы» – «Задать имя».

Пример создания именованного диапазона

У нас получится 5 именованных диапазона: Волгоград, Воронеж, Краснодар, Москва и Ростов_на_Дону.

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

Ошибка в создании именованного диапазона

Поэтому, вместо дефисов в названии города Ростов-на-Дону мы укажем допустимый символ – нижнее подчеркивание.

Корректное имя для названия с дефисами

Именованные диапазоны готовы.

Именованные диапазоны созданы

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

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

Проверка данных. Функция ДВССЫЛ

Зависимый выпадающий список адресов готов.

Зависимый выпадающий список функцией ДВССЫЛ

Зависимый выпадающий список функцией ДВССЫЛ (2)

Меняя значения в ячейке D2, меняются списки в ячейке E2. За исключением города Ростов-на-Дону. В выпадающем списке городов (ячейка D2), в названии используется дефис, а в именованном диапазоне – нижнее подчеркивание.

Для города, в названии которого содержатся дефисы, выпадающие списки пока не отражаются

Чтобы устранить это несоответствие, перед тем как применять функцию ДВССЫЛ, обработаем значения функцией ПОДСТАВИТЬ.

Функция ПОДСТАВИТЬ заменяет определенный текст в текстовой строке на новое значение. Вместо: =ДВССЫЛ(D2) укажем: =ДВССЫЛ(ПОДСТАВИТЬ(D2;"-";"_"))

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

Выпадающий список для города, в названии которого содержатся дефисы, после обработки функцией ПОДСТАВИТЬ

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

Выпадающий список городов в Excel

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

Для начала создадим из диапазона данных «умную» таблицу Excel. Сделать это можно сочетанием клавиш Ctrl+T.

Создаем умную таблицу Excel

Одним из полезных свойств умной таблицы является растягивающийся диапазон. То есть, если мы будем добавлять новые строки, они автоматически будут попадать в выпадающий список. Например, добавим новый город – Санкт-Петербург. И вот, он уже появился в нашем первом выпадающем списке.

Автоматическое обновление данных выпадающего списка

Как сделать выпадающий список уникальных значений в Excel?

Надоело смотреть на повторяющиеся названия городов в выпадающем списке. Реализуем выпадающий список так, чтобы названия городов в нем не повторялись. Для этого, добавим слева вспомогательный столбец. Мы дали ему название – «Уникальные».

Создаем вспомогательный столбец

И включим новый столбец в диапазон «умной» таблицы. «Конструктор» – «Размер таблицы». Вместо =$B$1:$C$17 указываем: =$A$1:$C$17

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

Вспомогательный столбец включен в диапазон умной таблицы Excel

В ячейку А2 добавим формулу массива, которая будет формировать список уникальных городов:

=ЕСЛИОШИБКА(ИНДЕКС([Город];ПОИСКПОЗ(0;СЧЁТЕСЛИ(A$1:A1; [Город]);0));"")

Чтобы Excel воспринял нашу формулу, как формулу массива, жмем Ctrl + Shift + Enter.

Формула массива для подсчета уникальных значений

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

Автоматическое добавление новых уникальных значений

Из списка уникальных городов создадим именованный диапазон (мы назвали его — «Уникальные»), который затем используем в качестве источника для выпадающего списка городов.

Именованный диапазон для уникальных значений

«Проверка данных» – «Список». В источнике данных, вместо предыдущего диапазона с названиями городов =$B$2:$B$18, задаем имя – =Уникальные

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

Лишние пустые строки в выпадающем списке

Чтобы их убрать, доработаем именованный диапазон «Уникальные». В диспетчере имен, вместо диапазона =Таблица1[Уникальные] используем: =СМЕЩ(Лист1!$A$2;0;0;СЧЁТЗ(Таблица1[Уникальные])-СЧИТАТЬПУСТОТЫ(Таблица1[Уникальные]))

где: Лист1!$A$2 – ячейка со значением первого пункта списка уникальных значений

Таблица1[Уникальные] – столбец с перечнем всех пунктов списка

Убираем лишние пустые строки в выпадающем списке функцией СМЕЩ

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

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

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

Как сделать автоматически обновляемый зависимый список? Способ 2: СМЕЩ+ПОИСКПОЗ+СЧЁТЕСЛИ

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

Удаляем именованные диапазоны

В ячейку F2 (зависимый выпадающий список адресов) вместо: =ДВССЫЛ(ПОДСТАВИТЬ(E2;"-";"_")) вставляем: =СМЕЩ($B$2;ПОИСКПОЗ(E2;$B$2:$B$18;0)-1;1;СЧЁТЕСЛИ($B$2:$B$18;E2);1)

Функция СМЕЩ для зависимого выпадающего списка

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

Аргументы функции:

Ссылка – берем первую ячейку нашего списка, т.е. $B$2

Смещение по строкам – считает функция ПОИСКПОЗ, которая выдает порядковый номер ячейки с выбранным городом (E2) в заданном диапазоне ($B$2:$B$18)

Смещение по столбцам = 1, т.к. мы хотим сослаться на адреса в соседнем столбце (С)

Высота – вычисляем с помощью функции СЧЁТЕСЛИ, которая подсчитывает количество встретившихся в диапазоне ($B$2:$B$18) нужных нам значений – названий городов (E2)

Ширина = 1, т.к. нам нужен один столбец с адресами

Зависимый автообновляемый выпадающий список готов

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

С выпадающими списками в Google таблицах все немного иначе.

Выпадающий список в Google таблицах

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

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

«Данные» – «Настроить проверку данных» – «Значение из диапазона»

Создание выпадающего списка в Google таблицах

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

Выпадающий список в Google таблицах

Зависимый выпадающий список в Google таблицах

Возвращаемся к двум основным способам, которые мы рассмотрели в Excel.

Способ 1: именованные диапазоны + ДВССЫЛ

Создадим именованные диапазоны с адресами. Имя каждому присвоим в соответствии с городом.

Выделяем ячейки – «Данные» – «Настроить именованные диапазоны»

Указываем имя и жмем готово. У нас получится 5 именованных диапазонов: Волгоград, Воронеж, Краснодар, Москва и Ростов_на_Дону.

Также, как и в Excel, в Google таблицах к именам диапазонов есть список требований.

Ошибка при введении некорректного имени

Поэтому, вместо дефисов в названии города Ростов-на-Дону укажем допустимый символ – нижнее подчеркивание.

Именованные диапазоны готовы

В Google таблицах мы не сможем подобно Excel задать функцию ДВССЫЛ в инструменте «Проверка данных». Поэтому, разместим результат функции ДВССЫЛ в пустых ячейках правее. Не забываем добавить обработку значений от дефисов функцией ПОДСТАВИТЬ. Подробнее о том, для чего это нужно, мы говорили ранее в примере Excel.

В ячейке F1 введем: =ДВССЫЛ(ПОДСТАВИТЬ(D2;"_";"-"))

Функция ДВССЫЛ в действии

Последний штрих в создании зависимого выпадающего списка, в разделе «Настроить проверку данных», в качестве диапазона указываем список из столбца F:F.

Зависимый выпадающий список в Google таблицах готов

Зависимый выпадающий список в Google таблицах готов (2)

При дальнейшей работе вспомогательный столбец F можно скрыть. Минус такого метода – отсутствие динамичности. Если мы добавим новый город и адрес, то они не появятся в созданных выпадающих списках. Но это решаемо!

Как автоматически обновить выпадающий список в Google таблицах при добавлении новых данных?

В выпадающем списке городов, достаточно расширить диапазон и вместо =$A$2:$A$16 указать: =$A$2:$A. Теперь при добавлении нового города он автоматически появляется в выпадающем списке.

Автоматическое обновление выпадающего списка

Как автоматически обновить зависимый выпадающий список в Google таблицах при добавлении новых данных?

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

В ячейке G6 укажем:

=СМЕЩ($A$2;ПОИСКПОЗ($D$7;$A$2:$A;0)-1;1;СЧЁТЕСЛИ($A$2:$A;$D$7);1)

Важно: для корректной работы этого способа, данные в столбце с городом должны быть отсортированы от А до Я, или от Я до А. Подробнее о том, как в данном случае работает функция СМЕЩ читайте выше в примере с Excel.

Функция СМЕЩ для зависимого выпадающего списка

Заключительным этапом поместим результат функции СМЕЩ в диапазон выпадающего списка.

Задаем диапазон для зависимого выпадающего списка

Зависимый выпадающий список в Google таблицах готов

Скроем вспомогательные столбцы для удобства.

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

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

Заключение

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

Изучить работу в программе Excel Вы можете на наших курсах: бесплатные онлайн-курсы по Excel

Пройдите бесплатный тест на нашем сайте, чтобы объективно оценить свой уровень владения инструментами и функциями программы Excel: пройти бесплатный тест

У нас Вы можете заказать выполнение задач по MS Excel и Google таблицам


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

Обычный

Выпадающий (раскрывающийся) список

отображает только один перечень элементов.

Связанный список

– это такой

выпадающий список

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

связанных списков

(другие названия:

связанные диапазоны

,

динамические списки

) появляется при моделировании иерархических структур данных. Например:


  • Отдел



    Сотрудники отдела

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

  • Город – Улица – Номер дома

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

    город

    , затем из списка всех улиц этого города –

    улицу

    , затем, из списка всех домов на этой улице –

    номер дома

    (трехуровневая иерархия).

В этой статье рассмотрен только двухуровневый

связанный список

. Многоуровневый связанный список рассмотрен в одноименной статье

Многоуровневый связанный список

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

выпадающих списков

связанных со слишком большим количеством элементов.

Связанный список

можно реализовать в EXCEL, с помощью инструмента

Проверка данных

(

) с условием проверки

Список

(пример создания приведен в данной статье) или с помощью

элемента управления формы

Список

(см. статью

Связанный список на основе элемента управления формы

).

Создание

Связанного списка

на основе

Проверки данных

рассмотрим на конкретном примере.


Задача

: Имеется перечень

Регионов

, состоящий из названий четырех регионов. Для каждого

Региона

имеется свой перечень

Стран

. Пользователь должен иметь возможность, выбрав определенный

Регион

, в соседней ячейке выбрать из

Выпадающего списка

нужную ему

Страну

из этого

Региона

.

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

Связанного списка

, разместим на листе

Таблица

. См.

файл примера

Связанный_список.xlsx

Список регионов и перечни стран разместим на листе

Списки

.

Обратите внимание, что названия регионов (диапазон

А2:А5

на листе

Списки

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

В1:Е1

).

Присвоим

имена

диапазонам, содержащим

Регионы

и

Страны

(т.е. создадим

Именованные диапазоны

). Быстрее всего это сделать так:

  • выделитьячейки

    А1:Е6

    на листе

    Списки

    (т.е. диапазон, охватывающий все ячейки с названиями

    Регионов

    и

    Стран

    );
  • нажать кнопку «Создать из выделенного фрагмента» (пункт меню

    );

  • Убедиться, что стоит только галочка «В строке выше»;
  • Нажать ОК.

Проверить правильность имени можно через

Диспетчер Имен

(

). Должно быть создано 5 имен.

Можно подкорректировать диапазон у имени

Регионы

(вместо

=списки!$A$2:$A$6

установить

=списки!$A$2:$A$5

, чтобы не отображалась последняя пустая строка)

На листе

Таблица

, для ячеек

A

5:

A

22

сформируем

выпадающий список

для выбора

Региона

.

  • выделяем ячейки

    A

    5:

    A

    22

    ;
  • вызываем инструмент

    Проверка данных

    ;

  • устанавливаем тип данных –

    Список

    ;
  • в поле

    Источник

    вводим:

    =Регионы

Теперь сформируем

выпадающий список

для столбца

Страна

(это как раз и будет желанный

Связанный список

).

  • выделяем ячейки

    B

    5:

    B

    22

    ;
  • вызываем инструмент

    Проверка данных;
  • устанавливаем тип данных –

    Список

    ;
  • в поле

    Источник

    вводим:

    =ДВССЫЛ(A5)

Важно, чтобы при создании правила

Проверки данных

активной ячейкой была

B5

, т.к. мы используем

относительную адресацию

.

Тестируем. Выбираем с помощью

выпадающего списка

в ячейке

A

5

Регион



Америка

, вызываем

связанный список

в ячейке

B

5

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

Региона

Америка

:

США, Мексика

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

A

6

Регион



Азия

, вызываем

связанный список

в ячейке

B

6

и опять балдеем:

Китай, Индия

Необходимо помнить, что в именах нельзя использовать символ пробела. Поэтому, при создании имен, вышеуказанным способом, он будет автоматически заменен на нижнее подчеркивание «_». Например, если вместо

Америка

(ячейка

В1

) ввести «

Северная Америка

» (соответственно подкорректировав ячейку

А2

), то после нажатия кнопки

Создать из выделенного фрагмента

будет создано имя «Северная_Америка». В этом случае формула

=ДВССЫЛ(A5)

работать не будет, т.к. при выборе региона «

Северная Америка

» функция

ДВССЫЛ()

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

Регионов

:

=ДВССЫЛ(ПОДСТАВИТЬ(A5;» «;»_»))

.

Теперь о

недостатках

. При создании имен с помощью кнопки меню

Создать из выделенного фрагмента,

все

именованные диапазоны

для перечней

Стран

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

связанные списки

для других регионов содержали пустые строки.

Конечно, можно вручную откорректировать диапазоны или даже вместо

Именованных диапазонов

создать

Динамические диапазоны

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

Регионов

придется вручную создавать

именованные диапазоны

для их

Стран

.

Чтобы не создавать десятки имен, нужно изменить сам подход при построении

Связанного списка

. Рассмотрим этот подход в другой статье:

Расширяемый Связанный список

.

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

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

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

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

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

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

  1. Вручную через «точку-с-запятой» в поле «Источник».
  2. Ввод значений.

  3. Ввести значения заранее. А в качестве источника указать диапазон ячеек со списком.
  4. Проверка вводимых значений.

  5. Назначить имя для диапазона значений и в поле источник вписать это имя.

Имя диапазона.
Раскрывающийся список.

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



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

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

  1. Выделяем диапазон для выпадающего списка. В главном меню находим инструмент «Форматировать как таблицу».
  2. Форматировать как таблицу.

  3. Откроются стили. Выбираем любой. Для решения нашей задачи дизайн не имеет значения. Наличие заголовка (шапки) важно. В нашем примере это ячейка А1 со словом «Деревья». То есть нужно выбрать стиль таблицы со строкой заголовка. Получаем следующий вид диапазона:
  4. Выпадающий список.

  5. Ставим курсор в ячейку, где будет находиться выпадающий список. Открываем параметры инструмента «Проверка данных» (выше описан путь). В поле «Источник» прописываем такую функцию:

Ввод значения в источник.

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

Список и таблица.

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

Добавлено значение елка.

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

Удалено значение береза.

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

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

Ввод данных из списка.

  1. Сформируем именованный диапазон. Путь: «Формулы» — «Диспетчер имен» — «Создать». Вводим уникальное название диапазона – ОК.
  2. Создание имени.

  3. Создаем раскрывающийся список в любой ячейке. Как это сделать, уже известно. Источник – имя диапазона: =деревья.
  4. Снимаем галочки на вкладках «Сообщение для ввода», «Сообщение об ошибке». Если этого не сделать, Excel не позволит нам вводить новые значения.
  5. Сообщение об ошибке.

  6. Вызываем редактор Visual Basic. Для этого щелкаем правой кнопкой мыши по названию листа и переходим по вкладке «Исходный текст». Либо одновременно нажимаем клавиши Alt + F11. Копируем код (только вставьте свои параметры).
  7. Private Sub Worksheet_Change(ByVal Target As Range)
     
    Dim lReply As Long
     
        If Target.Cells.Count > 1 Then Exit Sub
        If Target.Address = "$C$2" Then
         If IsEmpty(Target) Then Exit Sub
           If WorksheetFunction.CountIf(Range("Деревья"), Target) = 0 Then
              lReply = MsgBox("Добавить введенное имя " & _
                             Target & " в выпадающий список?", vbYesNo + vbQuestion)
              If lReply = vbYes Then
                  Range("Деревья").Cells(Range("Деревья").Rows.Count + 1, 1) = Target
              End If
           End If
         End If
    End Sub
     
  8. Сохраняем, установив тип файла «с поддержкой макросов».
  9. Сообщение об ошибке.

  10. Переходим на лист со списком. Вкладка «Разработчик» — «Код» — «Макросы». Сочетание клавиш для быстрого вызова – Alt + F8. Выбираем нужное имя. Нажимаем «Выполнить».

Макрос.

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

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

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

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

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

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

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

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

Три именованных диапазона.

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

  1. Создадим первый выпадающий список, куда войдут названия диапазонов.
  2. Список диапазонов.

  3. Когда поставили курсор в поле «Источник», переходим на лист и выделяем попеременно нужные ячейки.
  4. Таблица со списком.

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

    Выбор нескольких значений из выпадающего списка 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

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

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

    1. На вкладке «Разработчик» находим инструмент «Вставить» – «ActiveX». Здесь нам нужна кнопка «Поле со списком» (ориентируемся на всплывающие подсказки).
    2. Вставить ActiveX.

    3. Щелкаем по значку – становится активным «Режим конструктора». Рисуем курсором (он становится «крестиком») небольшой прямоугольник – место будущего списка.
    4. Элемент ActiveX.

    5. Жмем «Свойства» – открывается перечень настроек.
    6. Свойства ActiveX.

    7. Вписываем диапазон в строку ListFillRange (руками). Ячейку, куда будет выводиться выбранное значение – в строку LinkedCell. Для изменения шрифта и размера – Font.

    Скачать пример выпадающего списка

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

Понравилась статья? Поделить с друзьями:
  • Excel своя функция массив
  • Excel серый фон вместо таблицы
  • Excel своя функция впр
  • Excel серый фон в документе
  • Excel своя функция в ячейке