Как сделать выпадающий список в Excel — ExcelGuide: Про Excel и не только


  • 17 июля, 2020
  • , Статьи по Excel
В данной статье рассматривается методика быстрого создания многоуровневых (каскадных) выпадающих списков в Excel на основе умных таблиц для моделирования иерархических данных. В качестве примера в видеоуроке создаются 6-уровневые выпадающие списки.

Мир вокруг нас полон иерархических структур. Зачастую при разработке форм в Microsoft Excel мы сталкиваемся с задачей организации выбора показателей, имеющих некую иерархию, например, адреса (страна-город-улица-дом), организационная структура предприятия (департамент – управление – отдел-сотрудник) или же номенклатура товаров магазина. Почти каждый пользователь Excel умеет создавать в ячейке выпадающий список, более продвинутые могут создать второй, связанный с первым выпадающий список.

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

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

Основа методики – организация исходной информации в «Умных таблицах», т.е. специально структурированных объектах Excel. «Умную таблицу» можно создать клавишами Ctrl+T или кнопкой Таблица на вкладке Вставка, после чего таблице необходимо задать имя (во всплывающей при её выделении вкладки Конструктор). Основное требование – названия нижестоящих таблиц должны соответствовать элементам вышестоящих. В качестве примера рассмотрим фрагмент 6-уровневой иерархии товаров магазина, оформленной в “Умных таблицах”:

Первая таблица Группы_товаров связывает группы товаров и категории: в магазине 2 группы товаров – поля Продукты_питания и Одежда, каждая из которых включает по 2 категории товаров: продукты питания состоят из элементов Молочные_продукты и Мясо, одежда – Верхняя_одежда и Спортивные_товары. Обратите внимание! Элементы таблицы будут являться одновременно названием для нижестоящих таблиц. К именам таблиц предъявляются специальные требования: имя должно начинаться с буквы, не должно содержать пробелов и специальных символов. На следующем уровне создаются таблицы, связывающие категории и виды продукции: в приведенном примере создана таблица с именем Молочные_продукты, содержащая поля Молоко (подразделяется на козье и коровье) и Сыр (подразделяется на твердый и полутвердый), а также таблица с именем Мясо, содержащая поля Красное_мясо (подразделяется на говядина и свинина) и Птица (подразделяется на курицу и индейку). 

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

Всего возможны три вида выпадающих списков:

1 уровень (первичный, не связанный ни с чем список)

2 уровень (имеющий одну связь на один вышестоящий выпадающий список: имя таблицы или имя поля)

3 уровень (имеющий две связи на вышестоящие списки: на имя таблицы и имя поля)

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

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

Выпадающий список 1 уровня:

Создать список конкретных умных таблиц книги: Таблица1;Таблица2;Таблица3

Создать список полей конкретной таблицы:  =ДВССЫЛ(“Таблица1“&”[#Заголовки]”)

Создать список элементов конкретного поля конкретной таблицы: =ДВССЫЛ(“Таблица1“&”[Поле1]”)

Выпадающий список 2 уровня:

Создать список полей таблицы, выбираемой в вышестоящем списке:  =ДВССЫЛ(A1&”[#Заголовки]”)

Создать список элементов выбираемого поля конкретной таблицы: =ДВССЫЛ(“Таблица1“&”[“&А1&”]”)

Выпадающий список 3 уровня

 Создать список элементов выбираемого поля выбираемой таблицы: =ДВССЫЛ(A1&”[“&B1&”]”)

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

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

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

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

1.Откройте таблицу Excel, в которой хотите сделать ячейки с выпадающими списками. Перечень значений для выпадающего списка сначала нужно где-то записать, можно на этом же листе, но далеко внизу или создать дополнительный лист (как мы делаем в нашем примере) и туда записать значения для создания выпадающего списка. Нажимаем на” +” внизу, чтобы добавить еще один лист.

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

3.Когда введете все значения, выделите ячейки с данными (используя мышь или удерживая клавишу shift и двигаясь стрелками в нужном направлении). Когда ячейки с данными выделите – выше введите имя для диапазона выбранных ячеек и нажмите Enter (смотрите рисунок). В нашем примере мы пишем имя “Цена” и нажимаем Enter.

4.Откройте лист и выберите ячейку в которую вы хотите добавить выпадающий список => на верхней панели выберите “Данные” => откройте левой клавишей мыши “Проверка данных”.

5.В поле “Тип данных” из выпадающего списка выберите “Список”

6.Снимите галочку с “Игнорировать пустые ячейки”  и в поле “Источник” напишите = и имя, которое вы присвоили диапазону ячеек в 3ем пункте. Мы, в данном примере, диапазону ячеек присвоили имя “Цена”, по этому в поле “Источник” нам нужно написать =Цена 

7. Перейдите во вкладку “Сообщения для ввода”, здесь вы можете написать сообщение, которое будет отображаться при выборе ячейки со списком. После ввода нужного сообщения нажмите “ОК”.

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

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

Если в будущем у вас возникнет надобность убрать выпадающий список из какой-то ячейки: выберите ячейку с выпадающим списком =>  на верхней панели выберите “Данные” => откройте левой клавишей мыши “Проверка данных” (описывалось и изображение было в 4ом пункте).

Нажмите левой клавишей мыши на “Очистить всё”.

Нажмите “Ок”.

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

Автор: · 20 февраля

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

  1. Находим уже имеющийся список и добавляем в него одну или несколько позиций.
  2. Так как у нашего диапазона со списком уже есть имя «список», необходимо включить в него новые данные, в Excel 2007 и новее переходим на вкладку Формулы → Диспетчер имен → и выбираем имя таблицы которую нужно изменить:      выбираем в меню Вставка → Имя → Присвоить
  3. Нажимаем «изменить» → в открывшемся окне меняем диапазон данных → и нажимаем «ок»

Закрываем окно диспетчера имен и Готово!

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

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

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

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

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

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

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

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

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

В Excel 2007/2010 Данные | Работа с данными | Проверка данных (смотрите рисунок ниже)

В Excel 2003 вам необходимо перейти в раздел Данные | Проверка (смотрите рисунок)

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

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

Аналогично поступим с городами, но теперь источник укажем в виде именованного диапазона. Для этого выделим исходный диапазон H5:H9, после этого перейдем в поле имени (смотрите рисунок) и присвоим данному диапазону имя: города (имя должно начинаться с буквы и не должно содержать пробелы), обязательно нажимаем после этого Enter.

В дальнейшем для редактирования именованного диапазона вы можете использовать диспетчер имен. Который находится в разделе Формулы | Определенные имена | Диспетчер имен

После этого становимся во вторую желтую ячейку C4, выбираем  Данные | Работа с данными | Проверка данных, в раскрывающимся списке выбираем список, а в качестве источника указываем =города. Нажимаем Ок – получаем выпадающий список с использованием именованного диапазона.

В разделе Видео Уроки Вы можете найти Видео на эту тему.

Спасибо за внимание.

Поделиться:

Простой способ

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

image
image

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

Стандартный способ

Потребуется выделить диапазон ячеек, из которых будет создан выпадающий список, после чего ВставкаИмяПрисвоить (Excel 2003). В более новой версии (2007, 2010, 2013, 2016) перейдите на вкладку Формулы, где в разделе Определенные имена обнаружите кнопку Диспетчер имен.image

Жмем кнопку Создать, вносите имя, можно любое, после чего ОК.image

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

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

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

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

Метод основан на вставке элемента управления, называемом «поле со списком«, которое будет представлять собой диапазон данных.

Выберите вкладку Разработчик (для Excel 2007/2010), в других версиях потребуется активировать эту вкладку на ленте в параметрахНастроить ленту.image

Переходим на эту вкладку – жмем кнопку Вставить. В элементах управления выбираем Поле со списком (не ActiveX) и нажмите по значку. Нарисуйте прямоугольник.image

  Объединение строк, столбцов и ячеек в Excel

Правой кнопкой по нему – Формат объекта.

Далее выберите Формировать по диапазону и выделите требуемые поля.

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

Применение элементов ActiveX

Все, как и в предыдущем только выбираем Поле со списком (ActiveX).

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

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

Читайте также:

Оцените статью
Рейтинг автора
4,8
Материал подготовил
Максим Коновалов
Наш эксперт
Написано статей
127
А как считаете Вы?
Напишите в комментариях, что вы думаете – согласны
ли со статьей или есть что добавить?
Добавить комментарий