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

Лайфхакер собрал семь способов: от простых к сложным.

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

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

👌 В телеграм-канале «Лайфхакер» лучшие статьи о том, как сделать жизнь проще.

Поставьте курсор в следующую пустую ячейку диапазона. В нашем примере это B7.

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

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

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

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

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

В открывшемся окне выберите тип данных «Список», кликните в поле «Источник» и выделите нужные ячейки.

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

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

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

Для начала создайте именованный диапазон. Для этого выделите ячейки с будущими пунктами выпадающего списка и озаглавьте, вписав имя в поле с названиями ячеек, а затем нажмите Enter. Обязательное условие: первым символом должна быть буква, нельзя использовать пробелы (ставьте вместо них «_»).

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

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

Выпадающий список с элементами из именованного диапазона готов.

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

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

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

Выберите «Список», в качестве источника укажите такую формулу: =ДВССЫЛ(" [имя_файла] имя_листа!диапазон") То есть внутри кавычек должно быть название файла с данными для списка в квадратных скобках, потом без пробела название листа, а затем так же без пробела восклицательный знак и обозначение диапазона. В нашем примере будет так: =ДВССЫЛ(" [Книга1] Лист1!A3:A9")

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

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

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

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

Выберите любой вариант дизайна, отметьте в открывшемся окошке опцию «Таблица с заголовками» и нажмите OK.

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

Кликните по ячейке, в которой должен быть список, и нажмите «Проверка данных» на вкладке «Данные».

Укажите «Список» как тип данных, а для источника введите такую формулу: =ДВССЫЛ("имя_таблицы") В нашем примере будет так: =ДВССЫЛ("Двери")

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

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

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

Если вкладка «Разработчик» не отображается, для начала следует включить её. Для этого раскройте меню и выберите «Другие команды…».

Кликните «Настроить ленту», затем включите пункт «Разработчик» и нажмите OK.

На вкладке «Разработчик» кликните «Вставить» и выберите «Поле со списком» из элементов ActiveX.

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

Найдите строку ListFillRange, введите в неё диапазон значений для списка и нажмите Enter. В нашем примере это B6:B9.

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

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

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

Подготовьте столбцы с данными: в шапках пункты первого, родительского списка, а под ними пункты связанного с ним второго. Выделите первый столбец с шапкой и на вкладке «Главная» кликните «Форматировать как таблицу».

Выберите любой из стилей, а затем в появившемся окошке включите опцию «Таблица с заголовками» и нажмите OK.

Кликните по любой из ячеек таблицы, а затем присвойте ей имя, вписав его в поле «Имя таблицы» и нажав Enter. Это будет пункт первого списка, в нашем примере — «Компьютеры». Таким же образом создайте таблицы для остальных столбцов и переименуйте их.

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

Укажите в качестве типа «Список», а в качестве источника выделите шапки столбцов с категориями, которые станут пунктами родительского перечня.

Далее установите курсор в ячейку, в которой будет второй список, кликните «Проверка данных», выберите вариант «Список», а в поле «Источник» впишите =ДВССЫЛ и адрес ячейки родительского списка в скобках. То есть =ДВССЫЛ(H3) для нашего примера.

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

А если указать «Наушники» — будут отображены соответствующие названия аксессуаров из одноимённого столбца.

Это упрощённая версия страницы.

Читать полную версию
Обложка: Лайфхакер
Если нашли ошибку, выделите текст и нажмите Ctrl + Enter
Олег Залялов
20.11.22 07:30
Вот за что я не люблю русификацию excel - так это за человеконенавистнический перевод имен функций. Что такое двссыл? Это indirect?
Олег Залялов
20.11.22 07:39
В вашем примере связанных списков можно обойтись без присваивания имен вручную, если использовать синтаксис работы с умными таблицами имя_таблицы[имя_столбца] и специальный диапазон для заголовков таблицы. А самый простой способ создать таблицу - просто нажать ctrl+l (потому что это называется list object).
Анастасия Наумцева
21.11.22 10:44
Да, такая вот локализация.