Гид по технологиям

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

6 min read Excel Обновлено 23 Dec 2025
Зависимый выпадающий список в Excel
Зависимый выпадающий список в Excel

Важно: если имена диапазонов содержат пробелы или специальные символы, используйте безопасные имена (без пробелов) или функцию SUBSTITUTE в формуле.

Быстрые ссылки

  • Начало работы
  • Добавление и именование элементов зависимого списка
  • Создание зависимого выпадающего списка
  • Альтернативные подходы и советы по совместимости
  • Устранение проблем и тесты качества

Microsoft Excel Logo

Описание изображения: логотип Microsoft Excel в зеленой гамме

Начало работы

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

В этом руководстве мы используем простой пример: в первом списке — отделы компании (Marketing, Finance, HR), во втором — сотрудники соответствующего отдела.

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

  1. Соберите элементы для зависимого списка (в нашем примере — сотрудники каждого отдела). Поместите их в отдельные столбцы или группы строк.
  2. Выделите ячейки с элементами для одного отдела. Это создаёт группу ячеек, которую можно назвать.
  3. На панели формул слева найдите поле Имя (Name Box). Введите имя диапазона. Нажмите Enter.

Name a cell group in Excel

Описание изображения: выделение группы ячеек и ввод имени диапазона через поле имени на панели формул

Правило: имена диапазонов должны совпадать с элементами первого списка. В нашем примере мы называем диапазоны Marketing, Finance и HR.

Named cell groups

Описание изображения: три именованных диапазона с сотрудниками для Marketing, Finance и HR

Советы:

  • Имена не должны содержать пробелов. Если в названии отдела есть пробелы (например, “Human Resources”), используйте вариант без пробелов (HumanResources) или символ подчеркивания (Human_Resources) и соответствующим образом адаптируйте первый список.
  • Можно хранить элементы зависимого списка на отдельном листе, если так удобнее. Главное — корректно назвать диапазоны.

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

  1. Выделите ячейку, где должен появиться второй (зависимый) список.
  2. Перейдите на вкладку Данные → Проверка данных (Data Validation).
  3. На вкладке Параметры в поле Разрешить выберите Список. Установите флажок «Список в ячейке» (In-Cell Dropdown). При желании включите “Игнорировать пустые”.

Select List and In-Cell Dropdown

Описание изображения: окно проверки данных с опцией “Список” и флажком “Список в ячейке”

  1. В поле Источник введите формулу, использующую INDIRECT. Замените адрес ячейки на ту ячейку, где находится первый список:
=INDIRECT($B$6)

Add INDIRECT as the Source

Описание изображения: ввод формулы INDIRECT в поле Источник окна проверки данных

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

  1. При желании задайте вкладки Ввод сообщения и Предупреждение об ошибке, чтобы объяснить пользователю правила выбора.
  2. Нажмите OK и проверьте работу: выберите значение в первом списке — во втором должны появиться только соответствующие элементы.

Dependent drop-down list in Excel

Описание изображения: пример работающего зависимого выпадающего списка, где для отдела Marketing показаны три сотрудника

Частые проблемы и их решения

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

  • Проблема: имена диапазонов содержат пробелы. Решение: либо переименуйте диапазоны без пробелов, либо измените формулу проверки данных на:

=INDIRECT(SUBSTITUTE($B$6," ","_"))

где вы заранее создаёте диапазоны с подчеркиваниями.

  • Проблема: список не обновляется после добавления элементов. Решение: если вы не используете динамический диапазон, добавленные строки не появятся. Используйте формулы OFFSET/COUNTA или оформите данные как Таблицу (Insert → Table) и ссылку на именованный столбец.

Альтернативные подходы

  1. Динамические массивы и FILTER (Office 365 / Excel 2021+)

    • Используйте функцию FILTER, чтобы получать список на листе, а затем указывайте этот диапазон как источник. Это избавляет от необходимости создавать именованные диапазоны вручную.
  2. Таблица и структурированные ссылки

    • Преобразуйте данные в Таблицу. Используйте фильтрацию по столбцу и создавайте промежуточный диапазон с результатами для использования в проверке данных.
  3. Функция OFFSET

    • Создайте динамический именованный диапазон через формулу OFFSET, которая автоматически растёт при добавлении строк.
  4. VBA макросы

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

Когда способ может не подойти

  • Если ваши пользователи работают в устаревших версиях Excel без поддержки INDIRECT или без возможности оформлять таблицы — проверьте совместимость. INDIRECT доступна в большинстве версий, однако динамические массивы и FILTER работают только в новых выпусках.
  • Если данные часто меняют названия категорий, поддержка множества именованных диапазонов усложнит администрирование. В таких случаях лучше хранить категории в таблицах и генерировать списки программно.

Ментальные модели и хелперы

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

Критерии приёмки

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

Тестовые сценарии и контроль качества

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

Шаблон проверки для разработчика (чек-лист)

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

Пример методологии быстрого развёртывания

  1. Подготовьте лист «Списки» и заполните категории и элементы.
  2. Назовите диапазоны по категориям.
  3. Создайте первый (родительский) список на рабочем листе ввода.
  4. Настройте проверку данных для зависимого списка с INDIRECT.
  5. Проверьте все сценарии и задокументируйте процедуру добавления новых значений.

Рекомендации по совместимости и локализация

  • В некоторых локализациях Excel разделителем аргументов в формулах может быть точка с запятой (;) вместо запятой (,). Например:
=INDIRECT($B$6)

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

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

Заключение

Зависимые выпадающие списки повышают точность ввода и ускоряют работу с формами и таблицами. Метод с именованными диапазонами и INDIRECT прост в реализации и не требует кода. Для более динамичных сценариев рассмотрите FILTER, Таблицы или макросы.

Краткое резюме: Создайте именованные диапазоны для каждой категории, используйте INDIRECT в проверке данных и тестируйте все варианты. Это займёт несколько минут и заметно улучшит UX ввода данных.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Samsung Flow: подключение Galaxy к Windows
Инструкции

Samsung Flow: подключение Galaxy к Windows

Клонирование и запуск Django‑проекта локально
Django

Клонирование и запуск Django‑проекта локально

Убрать лимит пути 260 символов в Windows
Windows

Убрать лимит пути 260 символов в Windows

Автоматизация рутинных задач — освободите часы
Автоматизация

Автоматизация рутинных задач — освободите часы

Кастомный gamerpic на Xbox — установка и советы
Xbox

Кастомный gamerpic на Xbox — установка и советы

Найти работу во время пандемии
Карьера

Найти работу во время пандемии