Динамически выпадающие списки в excel

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

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

dynamic-dropdown.gif 

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

Простой и удобный способ почти без формул. Использует новую возможность последних версий Microsoft Excel начиная с 2007 версии — «Умные Таблицы». Суть его в том, что любой диапазон можно выделить и отформатировать как Таблицу. Тогда он превращается, упрощенно говоря, в «резиновый», то есть сам начинает отслеживать изменения своих размеров, автоматически растягиваясь-сжимаясь при добавлении-удалении в него данных.

Выделите диапазон вариантов для выпадающего списка (A1:A5 в нашем примере выше) и на Главной (Home) вкладке нажмите кнопку Форматировать как таблицу (Home — Format as Table). Дизайн можно выбрать любой — это роли не играет:

zebra2.png

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

dynamic-dropdown1.png

Теперь выделите ячейки где вы хотите создать выпадающие списки (в нашем примере выше — это D2) и выберите в старых версиях Excel в меню Данные — Проверка (Data — Validation), а в новых нажмите кнопку Проверка данных (Data Validation) на вкладке Данные (Data). В открывшемся окне на вкладке Параметры (Settings) выберите вариант Список (List) и введите в поле Источник (Source) вот такую формулу:

dynamic-dropdown2.png

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

=INDIRECT(«Таблица1[Сотрудники]»)

Смысл этой формулы прост. Выражение Таблица1[Сотрудники] — это ссылка на столбец с данными для списка из нашей умной таблицы. Но проблема в том, что Excel почему-то не хочет понимать прямых ссылок в поле Источник (Source), т.е. нельзя написать в поле Источник выражение вида =Таблица1[Сотрудники]. Поэтому мы идем на тактическую хитрость — вводим ссылку как текст (в кавычках) и используем функцию ДВССЫЛ (INDIRECT), которая преобразовывает текстовую ссылку в настоящую, живую.

Осталось только нажать на ОК. Если теперь дописать к нашей таблице новые элементы, то они будут автоматически в нее включены, а значит — добавятся к нашему выпадающему списку. С удалением — то же самое.

Если вам лень возиться с вводом формулы ДВССЫЛ, то можно чуть упростить процесс. После создания умной таблицы просто выделите мышью диапазон с элементами для выпадающего списка (A2:A5) и введите в поле адреса имя для этого диапазона (без пробелов), например Стажеры, и нажмите на Enter:

dynamic-dropdown3.png

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

dynamic-dropdown4.png

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

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

Откройте меню Вставка — Имя — Присвоить (Insert — Name — Define) или нажмите Ctrl+F3. В открывшемся окне нажмите кнопку Добавить (New), введите имя диапазона (любое, но без пробелов и начинающееся с буквы, например — Люди) и в поле Ссылка (Reference) введите вот такую формулу:

dynamic-dropdown5.png

=СМЕЩ(A2;0;0;СЧЁТЗ(A2:A100);1)

=OFFSET(A2;0;0;COUNTA(A2:A100);1)

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

  • A2 — начальная ячейка
  • 0 — сдвиг начальной ячейки по вертикали вниз на заданное количество строк
  • 0 — сдвиг начальной ячейки по горизонтали вправо на заданное количество столбцов
  • СЧЁТЗ(A2:A100) — размер получаемого на выходе диапазона по вертикали, т.е. столько строк, сколько у нас занятых ячеек в списке
  • 1 — размер получаемого на выходе диапазона по горизонтали, т.е. один столбец

Теперь выделите ячейки, где вы хотите создать выпадающие списки, и выберите в старых версиях Excel в меню Данные — Проверка (Data — Validation). В открывшемся окне на вкладке Параметры (Settings) выберите вариант Список (List) и введите в поле Источник (Source) вот такую формулу:

=Люди

После нажатия на ОК ваш динамический список в выделенных ячейках готов к работе.

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

  • 4 способа создания выпадающих списков в ячейках листа Excel
  • Связанные выпадающие списки
  • Быстрое создание выпадающих списков с помощью надстройки 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 для проверки введенных данных. Повысить комфорт работы с данными позволяют возможности выпадающих списков: подстановка данных, отображение данных другого листа или файла, наличие функции поиска и зависимости.

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

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

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

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

  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.

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

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


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

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

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

«Динамизм»

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

заключается в следующем: после ввода в столбец какого-нибудь значения из

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

, список изменяется – введенное значение исчезает из

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

. Таким образом,

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

может обеспечить ввод в диапазон только

неповторяющихся

значений (см.

файл примера

).

Алгоритм решения задачи следующий:

  • создаем на листе

    Список

    исходный перечень элементов

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

    , например перечень сотрудников компании;

  • на листе

    ДинамическийСписок

    определяем диапазон для ввода сотрудников, например, выдвинутых на премию. Диапазон должен содержать неповторяющиеся фамилии (иначе кто-то получит 2 или 3 премии!) и все сотрудники должны быть из компании (иначе премию получат чужие!)
  • создаем на листе

    Список

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

    ДинамическийСписок

    ;
  • создаем обычный

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

    на основе модифицированного перечня сотрудников, созданного на предыдущем шаге.

Итак, приступим.

  • На листе

    Список

    , в столбце

    А

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

    Сотрудники

    .

  • На листе

    ДинамическийСписок

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

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

    (

    Ведомость для премии

    ). Это диапазон

    A3:A16

    .

  • На листе

    Список

    , в столбце

    B

    , напротив каждого значения из исходного перечня введем формулу =

    ЕСЛИ(СЧЁТЕСЛИ(ДинамическийСписок!$A$3:$A$16;A2);»»;СТРОКА())

Формула ищет уже введенные в диапазон

A3:A16

на листе

ДинамическийСписок

фамилии и, в случае успеха, возвращает значение

Пустой текст («»)

. Если значение не найдено, то выводится номер строки, в которой находится формула;

  • На листе

    Список

    , в ячейке

    С2

    , введем

    Формулу массива

    =

    ЕСЛИОШИБКА(ИНДЕКС($A$2:$A$9; НАИМЕНЬШИЙ($B$2:$B$9;СТРОКА(1:1))-СТРОКА($A$1));»»)

    После ввода вместо

    ENTER

    нажмите

    CTRL

    +

    SHIFT

    +

    ENTER

    .

Разберем работу формулы подробнее. Функция

НАИМЕНЬШИЙ()

сортирует по возрастанию столбец

B

и для каждой строки выводит значение. Функция

ИНДЕКС()

, в зависимости от результата функции

НАИМЕНЬШИЙ()

, извлекает фамилии из исходного перечня. Формулу скопируйте вниз до конца исходного перечня сотрудников. В результате в столбце

С

формируется перечень фамилий, еще не введенных на листе

ДинамическийСписок

. Это как раз наша цель. Промежуточный результат легко увидеть с помощью

клавиши

F9

(например, выделите в строке формул

НАИМЕНЬШИЙ($B$2:$B$9;СТРОКА(1:1))

, нажмите

F9

— вместо формулы отобразится ее результат).

Чтобы наш

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

содержал именно столько позиций, сколько имеется фамилий в столбце

С

, создадим

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

:

  • На вкладке

    Формулы

    в группе

    Определенные имена

    выберите команду

    Присвоить имя

    ;
  • В поле

    Имя

    введите:

    Сотрудники

    ;
  • В поле

    Область

    введите

    Книга

    ;
  • В поле

    Диапазон

    введите формулу

=

СМЕЩ(Cписок!$C$2;;;СЧЁТЕСЛИ(Cписок!$C$2:$C$29;»*?»))


Примечание

: для числовых значений используйте =

СМЕЩ(Cписок!$C$2;;;СУММПРОИЗВ(—ЕЧИСЛО(Cписок!$C$2:$C$29)))

  • Нажмите ОК.

Завершающий шаг: создаем

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

:

  • На листе

    ДинамическийСписок

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

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

    (

    A

    3:

    A

    16

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

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

    (

    )

    ,

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

    Список

    , в поле

    Источник

    указываем

    =

    Сотрудники

Протестируем наше решение. На листе

ДинамическийСписок

с помощью

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

выберем фамилию

Сидоров

.

Затем, в ячейке ниже, вызовем

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

и убедимся, что он не содержит фамилию

Сидоров

.


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

является разновидностью

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

.

A dynamic drop down (also known as a  dependent drop down) is a term for drop downs with a dynamic list. The list items of a dynamic drop down get updated according to another input which is usually another drop down as well. A common example is to have lots of items under different categories. Instead of trying to finding an item in a huge list, you can first select a category and then find your desired item in a filtered list. In this article, we are going to show you how to create a dynamic drop down list Excel using the dynamic array functions UNIQUE and FILTER.

Designing the dynamic drop downs

Our sample data consists of a 2-column table containing names and types. As a result, we need a drop down for each column. However, there 2 problems we need to address first:

  • Type values occur multiple times in the corresponding column. Listing an item multiple times may confuse our users.
  • We want the Name values to be listed based on the selection of type. For example, if we set the type to «WATER», the second drop down should only list the names that match with type «WATER».

dynamic drop down list excel

There are multiple ways to create a dynamic drop down list Excel. Here are a few examples:

  • How to create dependent dropdowns
  • Transforming a Complex Pricing List into a Quoting Tool in Excel

However, mos of these methods require an extensive use of formulas. Fortunately, the new dynamic array functions make things a lot easier. Let’s take a look at the basics of the dynamic array functions UNIQUE and FILTER.

UNIQUE and FILTER

In September, 2018, Microsoft has introduced new concepts like the dynamic arrays and spilling, in addition to a set of new functions, like the UNIQUE and the FILTER functions. The common characteristic of these two functions is their ability to return an array of values. We will be using this feature to populate the lists of unique items in our dynamic Excel drop down list.

UNIQUE Function

The UNIQUE function returns an array of unique values from a given array or range. This function is very helpful in eliminating items that occur multiple times. If you have a data set similar to our example that contains multiple values, like under the column Type, this formula will help simplify those lists.

When using the UNIQUE function, add the reference for the column of values you need, and the function will return a list of unique items.

=UNIQUE(Type)

*Type is named range referring C4:C17

For more information and examples for the UNIQUE function, please see our related guide.

dynamic drop down list excel

FILTER Function

The FILTER function, on the other hand, can filter an array of values by a criteria. The FILTER function accepts three (required) arguments:

  • An array to be filtered
  • An array of Boolean values to identify the filtered values
  • A return value if there are no other values left

For example, the following formula returns an array of values in a named range Name, where the values of the range Type is equal to the value of the DropdownType. Here, DropdownType is a single value, while «Name» and «Type» are ranges.

=FILTER(Name,Type=DropdownType,»No Name Found»)

In the screenshot below, DropdownType is equal to «FIRE». Thus, only two values, «Arcanine» and «Entei», are returned by the formula.

dynamic drop down list excel

Finalizing the structure

After this brief introduction, we can now create our dynamic drop down list Excel.

Create a higher level drop down containing the unique values

First step is creating a unique list of types and bind them to a drop down. In our example, we used the UNIQUE function on cell E4. The UNIQUE function spills its return array through the rest of the column.

Next is binding the spilled array into a drop down. To do this,

  • Select a cell to make a drop down.
  • Go to Data Validation
  • Select List under Allow
  • Type in your cell reference with the UNIQUE formula with a # character. This is =E4# in our example.

The # is the spill operator which saves us from guessing the size of the outcome array. Using # you can get all items returned from the UNIQUE formula.

dynamic drop down list excel

Create dynamic drop down with a dynamic list

This is where the FILTER function comes in. In our example, we named the ranges and used them in the formulas.

  • Type dropdown (H7) as DropdownType
  • List of types (C4:C17) as Type
  • List of names (B4:B17) as Name

Our formula in this example is in cell E15:

=FILTER(Name,Type=DropdownType,»No Name Found»)

The drop down procedure is very similar to previous one. The only difference is the reference of the cell contains the FILTER, =E15#.

That’s all!

Skip to content

5 способов создать выпадающий список в ячейке Excel

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

Зачем нужен выпадающий список?

Часто случается так, что в какой-то из колонок вашей таблицы нужно вводить одинаковые повторяющиеся значения. К примеру, фамилии сотрудников, названия товаров или делать выбор в ячейке Excel вида «да – нет». Что может случиться? Конечно, в первую очередь будут ошибки при вводе. Человеческий фактор ведь никто не отменял. Чем нам сие грозит? К примеру, когда мы решим подсчитать, сколько заказов выполнил каждый из менеджеров, то окажется, что фамилий больше, чем сотрудников. Далее придётся искать ошибки, исправлять их и вновь повторять расчет.

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

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

1 — Самый быстрый способ создать выпадающий список.

Как проще всего добавить выпадающий список в таблицу Excel? Всего один щелчок правой кнопкой мыши по пустой клетке под столбцом с данными, затем команда контекстного меню «Выберите из раскрывающегося списка» (Choose from drop-down list). А можно просто стать в нужное место и нажать сочетание клавиш Alt+стрелка вниз. Появится отсортированный перечень уникальных ранее введенных значений.
Способ не работает, если нашу ячейку и столбец с записями отделяет хотя бы одна пустая строка или вы хотите ввести то, что еще не вводилось выше. На нашем примере это хорошо видно.

простой способ создания

2 — Используем меню.

Давайте рассмотрим небольшой пример, в котором нам нужно постоянно вводить в таблицу одни и те же наименования товаров. Выпишите в столбик данные, которые мы будем использовать (например, названия товаров). В нашем примере — в диапазон G2:G7.

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

Далее в главном меню выберите на вкладке Данные – Проверка… (Data – Validation). Затем укажите пункт Тип данных (Allow) и выберите вариант Список (List). Поставьте курсор в поле Источник (Source) и впишите в него адреса с эталонными значениями элементов — в нашем случае G2:G7. Рекомендуется также использовать здесь абсолютные ссылки (для их установки нажмите клавишу F4).

заполнить через меню

Бонусом здесь идет возможность задать подсказку и сообщение об ошибке, если автоматически вставленное значение вы захотите изменить вручную. Для этого существуют вкладки Подсказка по вводу (Input Message) и Сообщение об ошибке (Error Alert).

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

создаем из именованного диапазона списки в excel

К примеру, диапазону I2:I13, содержащему названия месяцев, можно присвоить наименование «месяцы». Затем имя можно ввести в поле «Источник».

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

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

Но вы можете и не использовать диапазоны или ссылки, а просто определить возможные варианты прямо в поле «Источник». К примеру, чтобы реализовать в таблице Excel простейший выбор «да – нет», вы можете вписать туда –

Да;Нет

Используйте для разделения значений точку с запятой, запятую, либо другой символ, установленный у вас в качестве разделителя элементов. (Смотрите Панель управления — Часы и регион — Форматы — Дополнительно — Числа.)

3 — Создаем элемент управления.

Вставим на лист новый объект – элемент управления «Поле со списком» с последующей привязкой его к данным на листе Excel. Делаем:

  1. Откройте вкладку Разработчик (Developer). Если её не видно, то в Excel 2007 нужно нажать кнопку Офис – Параметры – флажок Отображать вкладку Разработчик на ленте (Office Button – Options – Show Developer Tab in the Ribbon) или в версии 2010–2013 и выше щелкните правой кнопкой мыши по ленте, выберите команду Настройка ленты (Customize Ribbon) и включите отображение вкладки Разработчик (Developer) с помощью флажка.
  2. Найдите нужный значок среди элементов управления (см.рисунок ниже).

используем элемент управления

Вставив элемент управления на рабочий лист, щелкните по нему правой кнопкой мышки и выберите в появившемся меню пункт «Формат объекта». Далее указываем диапазон ячеек, в котором записаны допустимые значения для ввода. В поле «Связь с ячейкой» укажем, куда именно поместить результат. Важно учитывать, что этим результатом будет не само значение из указанного нами диапазона, а только его порядковый номер.

получаем в ячейку номер позиции в списке

Но нам ведь нужен не этот номер, а соответствующее ему слово. Используем функцию ИНДЕКС (INDEX в английском варианте). Она позволяет найти в списке значений одно из них соответственно его порядковому номеру. В качестве аргументов ИНДЕКС укажите диапазон ячеек (F5:F11) и адрес с полученным порядковым номером (F2).

Формулу в F3 запишем, как показано на рисунке:

=ИНДЕКС(F5:F11;F2)

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

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

4 — Элемент ActiveX

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

элемент ActiveX в раскрывающемся списке

Определяем перечень допустимых значений (1). Обратите внимание, что здесь для показа можно выбирать сразу несколько колонок. Затем выбираем адрес, по которому будет вставлена нужная позиция из перечня (2).Указываем количество столбцов, которые будут использованы как исходные данные (3), и номер столбца, из которого будет происходить выбор для вставки на лист (4). Если укажете номер столбца 2, то в А5 будет вставлена не фамилия, а должность. Можно также указать количество строк, которое будет выведено в перечне. По умолчанию — 8. Остальные можно прокручивать мышкой (5).

Этот способ сложнее предыдущего, но зато возвращает сразу значение, а не его номер. Поэтому необходимость в промежуточной ячейке и обработке ее при помощи ИНДЕКС — отпадает. Думаю, таким списком пользоваться гораздо удобнее.

5 — Выпадающий список в Excel с автозаполнением

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

Вот как автозаполнение может выглядеть на простом примере:

автозаполнение

Способ 1. Укажите заведомо большой источник значений для списка.

Самая простая и несложная хитрость. В начале действуем по обычному алгоритму действий: в меню выбираем на вкладке Данные – Проверка … (Data – Validation). Из перечня Тип данных (Allow) выберите вариант Список (List). Поставьте курсор в поле Источник (Source).  Зарезервируем в списке набор с большим запасом: например, до 55-й строки, хотя занято у нас только 7. Обязательно не забудьте поставить галочку в чекбоксе «Игнорировать пустые …». Тогда ваш «резерв» из пустых значений не будет вам мешать.

резервируем данные для списков

Действительно самый простой способ, но не слишком удобный. Ведь зарезервированное место может и закончиться…

Конечно, в качестве источника можно указать и весь столбец:

=$A:$A

Но обработка такого большого количества ячеек может несколько замедлить вычисления. Особенно в больших таблицах Excel.

Способ 2. Применяем именованный диапазон.

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

именованный диапазон в раскрывающихся списках

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

Выделим имеющийся в нашем распоряжении перечень имен A2:A10. Затем присвоим ему название, заполнив поле «Имя», находящееся левее строки формул.

Так вы присвоите какое-то имя этому диапазону Excel.

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

=имя

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

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

расширяем именованный диапазон

Главное неудобство пользования таким списком заключается в том, что используемый нами диапазон — статический. Автоматически его размеры измениться не могут. Согласитесь, не слишком удобный и технологичный способ. Слишком много ручных операций.

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

Способ 3. Выпадающий список на основе «умной» таблицы Excel.

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

Любой набор значений в таблице может быть таким образом преобразован. Например, A1:A8. Выделите их мышкой. Затем преобразуйте в таблицу, используя меню Главная — Форматировать как таблицу (Home — Format as Table). Укажите, что в первой строке у вас находится название столбца. Это будет «шапка» вашей таблицы. Внешний вид может быть любым: это не более чем внешнее оформление и ни на что больше оно не влияет.

Как уже было сказано выше, «умная» таблица хороша для нас тем, что динамически меняет свои размеры при добавлении в нее информации. Если в строку ниже нее вписать что-либо, то она тут же присоединит к себе её. Таким образом, новые значения можно просто дописывать. К примеру, впишите в A9 слово «кокос», и таблица тут же расширится до 9 строк.

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

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

=Таблица1[Столбец1]

и не считает его формулой. Хотя в обычных выражениях на листе вашей рабочей книги это вполне будет работать. Эта конструкция обозначает ссылку на первый столбец. Но в поле «Источник» она почему-то игнорируется.

Чтобы использовать «умную таблицу» как источник, нам придется пойти на небольшую хитрость и воспользоваться функцией ДВССЫЛ (INDIRECT в английском варианте). Эта функция преобразует текстовую переменную в обычную ссылку.

добавляем в ячейку автоматически пополняемые списки

Формула теперь будет выглядеть следующим образом:

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

Таблица5 — имя, автоматически присвоенное «умной таблице». У вас оно может быть другим. На вкладке меню Конструктор (Design) можно изменить стандартное имя на свое (но без пробелов!). По нему мы сможем потом адресоваться к нашей таблице на любом листе книги.

«Продукт» — название нашего первого и единственного столбца, присвоено по его заголовку.

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

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

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

А вот еще полезная для вас информация:

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

Содержание

  • 1 Растущий выпадающий список
  • 2 Связанные (зависимые) выпадающие списки
  • 3 Создаем простой выпадающий список
  • 4 Добавляем значения в выпадающий список – динамический список
  • 5 Выпадающий список со значениями с другого листа
  • 6 Создаем зависимые выпадающие списки
  • 7 Пример создания зависимого выпадающего списка в ячейке Excel
  • 8 Список категорий и подкатегорий в зависимом выпадающем списке Excel
    • 8.1 Зависимый выпадающий список подкатегорий
    • 8.2 Рабочая исходная таблица Excel
  • 9 1. Имена диапазонов ячеек
  • 10 2. Создание раскрывающегося списка для категории
    • 10.1 3. Создание зависимого выпадающего списка для подкатегории
  • 11 Проверка вводимых значений для подкатегории в зависимом выпадающем списке

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

Говоря о динамических выпадающих списках, подразумевается 2 варианта:

  • Растущие;
  • Зависимые.

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

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

Рассмотрим пример создания такого списка.

На любом листе размещается перечень будущих пунктов. Далее стандартным образом настраивается правило проверки данных: Вкладка «Данные» -> Область «Работа с данными» -> Кнопка «Проверка данных» -> Тип данных «Список». Для источника необходимо создать следующую формулу:

=СМЕЩ($A$1;;;СЧЁТЗ($A:$A)), где:

  • $A$1 – ячейка со значением первого пункта списка;
  • $A:$A – столбец с перечнем всех пунктов списка.

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

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

как сделать динамический выпадающий список в excel

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

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

В качестве примера рассмотрим создание зависимых выпадающих списков с перечнем товаров. Сначала определим категории имеющейся продукции (это будет главный список):

  • Бытовая_техника (пробел в названии специально заменен нижним подчеркиванием, т.к. диспетчер имен, который будет использован далее, не принимает символ пробела);
  • Электроника;
  • Мебель.

Теперь для каждого значения категории создается свой список, после чего ему присваивается имя в диспетчере имен (вкладка «Формулы» -> Область «Определенные имена») согласно этому значению.

как сделать динамический выпадающий список в excel

В завершении задаем для ячеек созданные нами связанные выпадающие списки с помощью проверки данных (вкладка «Данные» -> Область «Работа с данными»).

Для главного списка источником достаточно указать ссылку на диапазон, а для зависимых указывается формула:

=ДВССЫЛ($A$1), где:

  • $A$1 – ячейка с главным списком.

как сделать динамический выпадающий список в excel

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

как сделать динамический выпадающий список в excel

Если материалы office-menu.ru Вам помогли, то поддержите, пожалуйста, проект, чтобы мы могли развивать его дальше.

У Вас недостаточно прав для комментирования.

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

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

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

Для этого, в ячейки А1:А7 вписываем данные, которые будут отображаться в списке. Теперь выделим ячейку, в которой создадим выпадающий список – В2.

Переходим на вкладку «Данные» и кликаем по кнопочке «Проверка данных».

как сделать динамический выпадающий список в excel

На вкладке «Параметры» в поле «Тип данных» выбираем «Список». В поле «Источник» можно ввести значения различными способами:

1 – вводим значения для списка вручную, через точку с запятой;

как сделать динамический выпадающий список в excel

2 – указываем диапазон ячеек, в которые введены данные для выпадающего списка;

как сделать динамический выпадающий список в excel

3 – выделяем ячейки с именами, кликаем по ним правой кнопкой мыши и выбираем из меню «Присвоить имя».

как сделать динамический выпадающий список в excel

Дальше впишите «Имя» для выделенных данных.

как сделать динамический выпадающий список в excel

Выделяем ячейку В2 и в поле «Источник» ставим «=», затем пишем созданное имя.

как сделать динамический выпадающий список в excel

Таким образом, мы создали простой выпадающий список в Excel.

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

как сделать динамический выпадающий список в excel

Добавляем значения в выпадающий список – динамический список

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

Выделяем диапазон ячеек – D1:D8, затем на вкладке «Главная» нажимаем «Форматировать как таблицу» и выбираем любой стиль.

как сделать динамический выпадающий список в excel

Подтверждаем расположение данных и ставим галочку в поле «Таблица с заголовками».

Вверху пишем заголовок таблицы – «Сотрудники», и заполняем ее данными.

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

как сделать динамический выпадающий список в excel

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

как сделать динамический выпадающий список в excel

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

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

На Листе 2, выделяем одну ячейку или диапазон ячеек, затем кликаем по кнопочке «Проверка данных».

как сделать динамический выпадающий список в excel

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

как сделать динамический выпадающий список в excel

Теперь можно дописывать имена на Листе 1, они будут добавляться в выпадающие списки на Листе 2.

Создаем зависимые выпадающие списки

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

Первый называем «Имя», второй – «Фамилия», третий – «Отч».

Сделаем еще один диапазон, в котором будут прописаны присвоенные имена. Назовем его «Сотрудники».

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

В поле «Тип данных» выберите «Список», в поле источник – или введите «=Сотрудники», или выделите диапазон ячеек, которому присвоено имя.

Первый выпадающий список создан. Теперь в ячейке F2 создадим второй список, который должен зависеть от первого. Если в первом выберем «Имя», во втором отобразится список имен, если выберем «Фамилия» – список фамилий.

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

По такому принципу можно делать зависимые выпадающие списки.

Если в дальнейшем, нужно будет вписать значения в диапазон, которому задано имя, например, «Фамилия». Перейдите на вкладку «Формулы» и кликните «Диспетчер имен». Теперь в имени диапазона выбираем «Фамилия», и внизу, вместо последней ячейки С3, напишите С10. Нажмите галочку. После этого диапазон увеличится, и в него можно будет дописывать данные, которые автоматически будут появляться в выпадающем списке.

Теперь Вы знаете, как сделать раскрывающийся список в Excel.

Поделитесь статьёй с друзьями:

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

Спасибо, всё получилось.

Огромное спасибо автору за «зависимые выпадающие списки». Сам бился два дня, а ваша статья очень помогла. Всё работает на разных листах. Получил как раз то, что и хотел.

Автору спасибо за хорошую статью! Как оказалось, есть масса возможностей их создания!

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

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

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

Каждый продавец сначала определял товарную группу, а затем конкретный товар из этой группы. Форма должна включать полное имя группы и определенный индекс товара. Поскольку набирать это вручную было бы слишком трудоемким (и раздражающим) занятием, я предложил очень быстрое и простое решение — 2 зависимых выпадающих списка.

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

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

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

Список категорий и подкатегорий в зависимом выпадающем списке Excel

Признаюсь, что в предложенном мной варианте домашнего бюджета я ограничиваюсь только категорией, поскольку для меня такого разделения расходов вполне достаточно (название расходов / доходов рассматривается как подкатегория). Однако, если вам нужно разделить их на подкатегории, то метод, который я описываю ниже, будет идеальным. Смело используйте!

А конечный результат выглядит следующим образом:

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

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

Рабочая исходная таблица Excel

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

Можно было бы также использовать таблицы с первого изображения. Разумеется, формулы были бы разными. Однажды даже я нашел в сети такое решение, но оно мне не понравилось, потому что там была фиксированная длина списка: а значит, иногда список содержал пустые поля, а иногда и не отображал все элементы. Конечно, я могу избежать этого ограничения, но признаюсь, что мне больше нравится мое решение, поэтому к тому решению я больше не возвращался.

Ну хорошо. Теперь, по очереди я опишу шаги создания зависимого выпадающего списка.

1. Имена диапазонов ячеек

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

Присвоим имена двум диапазонам. Список всех категорий и рабочий список категорий. Это будут диапазоны A3:A5 (список категорий в зеленой таблице на первом изображении) и G3:G15 (список повторяющихся категорий в фиолетовой рабочей таблице).

Для того чтобы назвать список категорий:

  1. Выберите диапазон A3:A5.
  2. В поле имени (поле слева от строки формулы) введите название «Категория».
  3. Подтвердите с помощью клавиши Enter.

Такое же действие совершите для диапазона рабочего списка категорий G3:G15, который вы можете вызвать «Рабочий_Список». Этот диапазон мы будем использовать в формуле.

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

Это будет просто:

  1. Выберите ячейку, в которую вы хотите поместить список. В моем случае это A12.
  2. В меню «ДАННЫЕ» выберите инструмент «Проверка данных». Появится окно «Проверка вводимых значений».
  3. В качестве типа данных выберите «Список».
  4. В качестве источника введите: =Категория (рисунок ниже).
  5. Подтвердите с помощью OK.

Проверка вводимых значений – Категория.

Результат следующий:

Раскрывающийся список для категории.

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

Сейчас будет весело. Создавать списки мы умеем — только что это сделали для категории. Только единственный вопрос: «Как сказать Excelю выбрать только те значения, которые предназначены для конкретной категории?» Как вы, наверное, догадываетесь, я буду использовать здесь рабочую таблицу и, конечно же, формулы.

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

В источник списка введите следующую формулу:

Вид окна «Проверка вводимых значений»:

Проверка вводимых значений для подкатегории в зависимом выпадающем списке

Как видите, весь трюк зависимого списка состоит в использовании функции СМЕЩ. Ну хорошо, почти весь. Помогают ей функции ПОИСКПОЗ и СЧЕТЕСЛИ. Функция СМЕЩ позволяет динамически определять диапазоны. Вначале мы определяем ячейку, от которой должен начинаться сдвиг диапазона, а в последующих аргументах определяем его размеры.

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

Поскольку рабочая таблица отсортирована по Категории, то диапазон, который должен быть источником для раскрывающегося списка, будет начинаться там, где впервые встречается выбранная категория. Например, для категории Питание мы хотим отобразить диапазон H6:H11, для Транспорта — диапазон H12: H15 и т. д. Обратите внимание, что все время мы перемещаемся по столбцу H, а единственное, что изменяется, это начало диапазона и его высота (то есть количество элементов в списке).

Начало диапазона будет перемещено относительно ячейки H2 на такое количество ячеек вниз (по числу), сколько составляет номер позиции первой встречающейся категории в столбце Категория. Проще будет понять на примере: диапазон для категории Питание перемещен на 4 ячейки вниз относительно ячейки H2 (начинается с 4 ячейки от H2). В 4-ой ячейке столбца Подкатегория (не включая заголовок, так как речь идет о диапазоне с именем Рабочий_Список), есть слово Питание (его первое появление). Мы используем этот факт собственно для определения начала диапазона. Послужит нам для этого функция ПОИСКПОЗ (введенная в качестве второго аргумента функции СМЕЩ):

Высоту диапазона определяет функция СЧЕТЕСЛИ. Она считает все встречающиеся повторения в категории, то есть слово Питание. Сколько раз встречается это слово, сколько и будет позиций в нашем диапазоне. Количество позиций в диапазоне — это его высота. Вот функция:

Конечно же, обе функции уже включены в функцию СМЕЩ, которая описана выше. Кроме того, обратите внимание, что как в функции ПОИСКПОЗ, так и в СЧЕТЕСЛИ, есть ссылка на диапазон названный Рабочий_Список. Как я уже упоминал ранее, не обязательно использовать имена диапазонов, можно просто ввести $H3: $H15. Однако использование имен диапазонов в формуле делает ее проще и легко читаемой.

Вот и все:

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

Одна формула, ну не такая уж и простая, но облегчающая работу и защищает от ошибок при вводе данных!

Читайте также: Связанные выпадающие списки и формула массива в Excel

Два варианта использования этого трюка я уже представил. Интересно, как вы его будете использовать?

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