Связанные задачи в excel

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

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

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

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

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

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

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

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

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

=ДВССЫЛ(F2)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

linked_dropdowns4.gif

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

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

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

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

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

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

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

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

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

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

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

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

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

​Смотрите также​ введем в него​ более подробно?​

​ стал выпадать список​ чуть ли не​=СМЕЩ(начальная_ячейка; сдвиг_вниз; сдвиг_вправо; размер_диапазона_в_строках;​Этот способ требует наличия​ и в имени​ комбинацией клавиш Ctrl​Теперь рассмотрим, как связать​ — это «подподкатегория»​ него можно создать​
​ВПР​(Диспетчер имён).​ При этом с​ в ячейке​Список регионов и перечни​Создадим выпадающий список, содержимое​

  • ​ формулу, которая будет​vikttur​ с пустыми строчками​ каждый день (заканчиваются​ размер_диапазона_в_столбцах)​ отсортированного списка соответствий​ диапазона на нижнее​ + Shift +​
  • ​ выпадающий список в​ если она вообще​ Выпадающий (раскрывающийся) список​(VLOOKUP) для поиска​Нажмите кнопку​ помощью выпадающих списков,​B5​ стран разместим на​ которого зависит от​ выводить номера свободных​: Выподающие списки знаете,​ внизу. Как от​

​ ремонты, получаются пропуска,​Таким образом:​ марка-модель вот такого​ подчеркивание (т.е. Ssang_Yong).​ Enter !!!​ Excel. Поскольку Модель​
​ существует… Но для​ (см. Файл примера).​ значения из ячейки​New​ необходимо ограничить доступные​
​и балдеем –​ листе​ значений другой ячейки.​ сотрудников:​ сами делали.​ этого можно избавиться?​ оборудуются необходимыми средствами​начальная ячейка — берем​ вида:​Теперь создадим первый выпадающий​Скачать зависимые выпадающие списки​ зависит как от​ лучшего понимания данного​Для удобства создадим Именованный​B1​

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

​Обычный Выпадающий (раскрывающийся) список​​=ЕСЛИ(F2-G2​Ячейки столбца I:​Serge_007​ и т.д.)​ первую ячейку нашего​Для создания первичного выпадающего​ список для выбора​ в Excel​ Типа, так и​ обучающего материала, предположим,​ диапазон:​в таблице с​

​ новый именованный диапазон.​ и городов, из​ для Региона Америка:​.​​ отображает только один​​Теперь надо сформировать непрерывный​ меню Формат-Условное форматирование.​

​: Пустая строка, которую​- на втором​ списка, т.е. А1​​ списка можно марок​​ марки автомобиля. Выделите​

​Не нажмите OK случайно.​ от Производителя -​​ что существует.​​создайте список фамилий сотрудников,​​ названиями стран. После​​ Откроется диалоговое окно​ которых они могут​ США, Мексика…​Обратите внимание, что названия​​ перечень элементов. Связанный​​ (без пустых ячеек)​

​Имена: меню Вставка-Имя-присвоить.​ возвращает Ваша формула,​ листе планировщик маршрутов,​сдвиг_вниз — нам считает​ можно воспользоваться обычным​

  • ​ пустую ячейку и​​ Поэтому, когда вы​​ значит мы будем​​В любом случае, с​​ например в диапазоне​ того как индекс​New Name​ выбирать. В первой​
  • ​Теперь заполняем следующую строку.​ регионов (диапазон​ список – это​ список свободных сотрудников​vikttur​
  • ​ тоже является значением,​ в каждой ячейке​ функция​
  • ​ способом, описанным выше,​

​ откройте меню​ перейдете в меню​ использовать формулу массива.​ самого начала напишем,​D1:D10​ будет известен, мы​

​(Создание имени).​ ячейке мы сделаем​ Выбираем в ячейке​А2:А5​ такой выпадающий список,​

​ для связи -​​: «ВыпАдающие».​​ поэтому надо их​​ которой необходим выпадающий​​ПОИСКПОЗ (MATCH)​ т.е.​

  • ​Данные — Проверка (Data​​ «Данные», «Проверка данных»​​ Предположим, мы хотим​
  • ​ что этот учебный​
  • ​;​ выберем список, который​
  • ​В поле​ выбор страны, а​

​A6​на листе​ который может отображать​ на следующем шаге​serg14​

  • ​ вычитать из общего​​ список из машин.​​, которая, попросту говоря,​
  • ​дать имя диапазону D1:D3​
  • ​ — Validation)​ и выберите как​
  • ​ отобразить в нем​ материал является продолжением​

​выделите в ячейку​ станет источником данных​Name​​ во второй будут​​Регион – Азия,​Списки​

​ разные перечни элементов,​ — с выпадающим​: Это я так​​ количества:​​ Но нужно, чтобы​ выдает порядковый номер​ (например​​или нажмите кнопку​​ Тип данных «список»,​ легковые модели Fiat.​ материала: Как сделать​D1​

​ для нашего второго​(Имя) введите имя​​ доступны только принадлежащие​​ вызываем связанный список​) в точности должны​ в зависимости от​​ списком. Для этого​​ понимаю для Excel​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СМЕЩ(Транспорт!$G$3;0;0;СЧЁТЗ(Транспорт!$G$4:$G$11)-СУММ(—(Транспорт!$G$4:$G$11=»»))+1;1)​

​ этот выпадающий список​ ячейки с выбранной​Марки​Проверка данных (Data Validation)​ а в поле​ В первом списке​ зависимые выпадающие списки​заголовок Сотрудники;​ выпадающего списка. Для​​Country​​ выбранной стране города.​ в ячейке​​ совпадать с заголовками​​ значения другой ячейки.​ добавим еще один​ 2003, а в​gling​ состоял только из​ маркой (G7) в​) с помощью​на вкладке​ «Источник» вставьте эту​ мы выбрали Легковой,​ в ячейках Excel,​выделите диапазон​ этого напишем такую​для нашего первого​ Думаю, это понятно?​B6​

​ столбцов, содержащих названия​​Потребность в создании​​ столбец и введем​
​ 2010 где мне​: Эта формула должна​ тех, которые устраивают​ заданном диапазоне (столбце​Диспетчера имен (Name Manager)​Данные (Data)​ формулу и подтвердите​ во втором -​ в котором подробно​D2:D10​ формулу:​ именованного диапазона, а​Итак, давайте начнём наш​и опять балдеем:​ соответствующих стран (​

​ связанных списков (другие​ в него такую​ это найти?​ подойти​ всем условиям. В​ А)​с вкладки​если у вас​
​ ее с помощью​ Fiat.​ описали логику и​, в поле Имя,​=CHOOSE(VLOOKUP(B1,Sheet3!$A$3:$B$5,2,FALSE),England,France,Portugal)​

​ в поле​ простой пример с​ Китай, Индия…​В1:Е1​ названия: связанные диапазоны,​ страшноватую на первый​Z​

excel2.ru

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

​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=СМЕЩ(Транспорт!$G$3;0;0;СЧЁТЕСЛИ(Транспорт!$G$4:$G$11;»>»»»)+1;1)​​ моём примере: только​сдвиг_вправо = 1, т.к.​Формулы (Formulas)​ Excel 2007 или​ Ctrl + Shift​Мы будем перемещать ячейку​ способ создания одного​ слева от Строки​=ВЫБОР(ВПР(B1;Sheet3!$A$3:$B$5;2;ЛОЖЬ);England;France;Portugal)​Refers to​ того, как можно​Необходимо помнить, что в​).​ динамические списки) появляется​ взгляд формулу:​: Скажите, serg14, вы​maverick_77​ машины, у которых​

​ мы хотим сослаться​или в старых​ новее. Затем из​ + Enter. Вот​ H4 на столько​ из таких списков.​ формул введите Сотрудники​​Что же делает эта​​(Диапазон) выберите тот,​ создать связанный (или​ именах нельзя использовать​​Присвоим имена диапазонам, содержащим​​ при моделировании иерархических​=ЕСЛИ(D2>СЧЁТ($H$2:$H$10);»»;ИНДЕКС($E$2:$E$10;НАИМЕНЬШИЙ($H$2:$H$10;СТРОКА(E2)-1)))​ хотя бы раз​

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

​: gling, мегаспасбо! =)​ по «условию 1″​ на модели в​ версиях Excel -​ выпадающего списка​ и вся магия.​ строк, пока не​ Рекомендуем вам ознакомиться​ и нажмите​ формула? Она ищет​ в котором хранится​ зависимый) выпадающий список​ символ пробела. Поэтому,​ Регионы и Страны​​ структур данных. Например:​​или, соответственно,​​ пролистали риббоны (окна)​​Где можно почитать​​ — «готов», а​​ соседнем столбце (В)​ через меню​​Тип данных (Allow)​​Этот фокус основан на​​ найдем позицию первого​​ с ним, потому​ENTER​​ значение из ячейки​​ список стран:​ в Excel? В​ при создании имен,​

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

​ (т.е. создадим Именованные​Отдел – Сотрудники отдела.​=IF(D2>COUNT($H$2:$H$10);»»;INDEX($E$2:$E$10;SMALL($H$2:$H$10;ROW(E2)-1)))​ ленты Xl’я 2010,​ подробности о том,​ по «условию 2″​размер_диапазона_в_строках — вычисляем с​Вставка — Имя -​выберите вариант​ применении функции​ легкового Fiatа. Поэтому​ что здесь подробно​, либо, выделив диапазон​

​B1​=Sheet3!$A$3:$A$5​ ячейке​ вышеуказанным способом, он​ диапазоны). Быстрее всего​ При выборе отдела​При всей внешней жуткости​ как горорят, от​ как организуются динамические​ — «есть»​​ помощью функции​​ Присвоить (Insert -​​Список (List)​​ДВССЫЛ (INDIRECT)​ в колонке Тип​ описывается только то,​​D1:D10​​в списке стран​

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

​Нажмите​​B1​​ будет автоматически заменен​ это сделать так:​ из списка всех​​ вида, эта формула​​ «А» до «Я»?..​

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

​ диапазоны?​​PS: сори, если​​СЧЕТЕСЛИ (COUNTIF)​​ Name — Define)​​и в поле​, которая умеет делать​ мы должны иметь​​ как сделать тот​​через команду меню​ и возвращает соответствующий​ОК​

​мы будем выбирать​

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

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

​ Поинтересовались в «Приемах»​Serge_007, на реальном​ такая задача уже​

​, которая умеет подсчитать​выбрать на вкладке​Источник (Source)​ одну простую вещь​ значение Легковой, а​​ другой связанный выпадающий​​ Создать из выделенного​ индекс, который затем​, чтобы сохранить и​​ страну, а в​​ «_». Например, если​​А1:Е6​​ формируется список, содержащий​ вещь — выводит​ (или на офсайте)​​ массиве не стало​​ ставилась. Но я​

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

​ количество встретившихся в​​Данные (Data)​​выделите ячейки с​

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

​ — преобразовывать содержимое​ в колонке Производитель​ список :-) А​ фрагмента (Формулы/ Определенные​​ использует функция​​ закрыть диалоговое окно.​​ ячейке​​ вместо Америка (ячейка​на листе​​ перечень фамилий всех​​ очередное по номеру​ куда подевались в​ работать почему-то. Но​ не увидел её​ списке (столбце А)​​команду​​ названиями марок (желтые​ любой указанной ячейки​ должен быть Fiat.​ это то, что​ имена).​CHOOSE​Имена диапазонам, содержащим города,​​B2​​В1​Списки​ сотрудников этого отдела​ имя сотрудника (используя​ новом облике офиса​ всё равно большое​ среди рассмотренных на​ нужных нам значений​Проверка данных (Data validation)​​ ячейки в нашем​​ в адрес диапазона,​ Если бы мы​ мы хотим получить:​​СОВЕТ​​(ВЫБОР), чтобы выбрать​ можно присвоить точно​– принадлежащий ей​​) ввести «Северная Америка»​​(т.е. диапазон, охватывающий​ (двухуровневая иерархия);​​ функцию НАИМЕНЬШИЙ) из​​ команды и меню​ спасибо за вариант.​ форуме. Если я​ — марок авто​выбрать из выпадающего списка​ примере). После нажатия​ который понимает Excel.​ использовали промежуточный столбец​Итак, мы имеем:​:​

​ 1-й, 2-й или​
​ таким же образом.​

​ город, как на​ (соответственно подкорректировав ячейку​ все ячейки с​​Город – Улица –​​ списка или пустую​ из XL’я 2003?..​steysi​ просто не туда​​ (G7)​​ вариант проверки​ на​ То есть, если​

​ (это было бы​тип автомобиля: Легковой, Фургон​Если в будущем​

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

​ 3-й именованный диапазон.​Теперь мы можем создать​ примере:​А2​ названиями Регионов и​​ Номер дома. При​​ ячейку, если имена​Списки — проверка​: Подскажите пожалуйста как​ смотрел, дайте ссыль,​

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

​размер_диапазона_в_столбцах = 1, т.к.​Список (List)​ОК​ в ячейке лежит​ отличным решением, но​ и Внедорожник (Категория)​ потребуется пополнять список​Вот так будет выглядеть​ выпадающие списки в​

​Для начала нужно создать​), то после нажатия​
​ Стран);​
​ заполнении адреса проживания​

​ свободных сотрудников уже​

office-guru.ru

Ввод данных из списка значений. Часть 1: Выпадающий список в MS EXCEL

​ данных, условное -​ сделать и возможно​ пжл, и можно​ нам нужен один​и указать в​первый выпадающий список​ текст «А1», то​ хотели бы показать​производитель: Fiat, Volkswagen i​ сотрудников, то придется​

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

​ вручную модифицировать границы​ список:​ планировали выбирать данные.​ втором листе я​ выделенного фрагмента будет​ выделенного фрагмента» (пункт​ выбрать город, затем​в Excel 2003 и​ — через формулы​ екселе, выпадающий список​

​koyaanisqatsi​В итоге должно получиться​

  • ​Источника (Source)​Теперь создадим второй выпадающий​​ результате ссылку на​​ крутое ;-) ),​

  • ​модель: … немножечко их​​ именованного диапазона. Как​​В результате мы получим​
  • ​ Выделите ячейку​​ занес список стран,​​ создано имя «Северная_Америка».​ меню Формулы/ Определенные​ из списка всех​ старше идем в​​ и пр.пр.​​ со следующим условием:​​: maverick_77, так ?​​ что-то вроде этого:​=Марки​ список, в котором​ ячейку А1. Если​

​ то мы бы​​ есть :-) (Подподкатегория)​
​ обойти это неудобство​ два связанных (или​B1​ которые хочу дать​ В этом случае​ имена/ Создать из​ улиц этого города​ меню​

​VLad777​ 0-нет льгот, 1-скидка​gling​

  • ​Осталось добавить выпадающий список​или просто выделить​ будут отображаться модели​​ в ячейке лежит​​ искали комбинацию этих​
  • ​В то же время​ читайте в статье​ зависимых) выпадающих списка.​
  • ​(в ней мы​
  • ​ пользователям на выбор​ формула =ДВССЫЛ(A5) работать​

  • ​ выделенного фрагмента);​

​ – улицу, затем,​Вставка — Имя -​​: 2007 и 2010​​ в оплате 25%,​: Может так? Изменения​ на основе созданной​ ячейки D1:D3 (если​ выбранной в первом​

​ слово «Маша», то​ данных: Легковой Fiat.​ мы имеем следующие​ Динамический диапазон.​ Если мы выбираем​ будем выбирать страну),​ в первом раскрывающемся​ не будет, т.к.​Убедиться, что стоит только​

​ из списка всех​​ Присвоить (Insert -​Главная — Условное​ 2- 50%???? Нужно​ в закрашенных ячейках.​ формулы к ячейке​ они на том​ списке марки. Также​ функция выдаст ссылку​ Однако у нас​ данные:​Теперь создадим Выпадающий список​ страну​ откройте вкладку​

excel2.ru

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

​ списке, а в​ при выборе региона​ галочка «В строке​ домов на этой​ Name — Define)​ форматирование-Создать правило(или управление​ вычислить льготу и​koyaanisqatsi​ G8. Для этого:​ же листе, где​ как в предыдущем​ на именованный диапазон​ нет такого столбца,​

Два связанных выпадающих списка с формулой массива

​Этот список должен быть​ для ввода фамилий​France​Data​ соседнем столбце указал​ «Северная Америка» функция​ выше»;​ улице – номер​в Excel 2007 и​ правилами)​ оплату​: gling, У вас​выделяем ячейку G8​ список).​ случае, откройте окно​ с именем​ но мы можем​ отсортирован в следующей​ в ведомость:​, в связанном списке​

Два связанных выпадающих списка.

​(Данные), нажмите​

  • ​ числовой индекс, который​ ДВССЫЛ() не найдет​
  • ​Нажать ОК.​ дома (трехуровневая иерархия).​
  • ​ новее — жмем​Формулы — Диспетчер​

​Вячеслав Я​ поприличнее ) Список​выбираем на вкладке​

следующие данные.

​А вот для зависимого​Проверки данных​Маша​

  1. ​ создать его «на​
  2. ​ очередности:​
  3. ​выделите ячейки ведомости, куда​

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

Типа и Производителя.

​и т.д. Такой,​ лету», другими словами,​Тип.​ будут вводиться фамилии​ города только из​(Проверка данных), а​ списков городов. Списки​ формулу можно подкорректировать,​ через Диспетчер Имен​ только двухуровневый связанный​Диспетчер Имен (Name Manager)​serg14​steysi​ данных. У меня​команду​

​ создать именованный диапазон​

Первый и второй связанный выпадающий список: Тип и Производитель

​Источник​ своего рода, «перевод​ используя формулу массива.​Производитель.​ сотрудников, например​ Франции.​

​ затем в выпадающем​ городов располагаются правее​ чтобы она работала​

​ (Формулы/ Определенные имена/​ список. Многоуровневый связанный​на вкладке​: Ясно. Спасибо за​

Проверка данных. используем формулу.

​, можно написать формулу​ с пустыми (​Проверка данных (Data validation)​ с функцией​

Третий связывающий выпадающий список: Модель

​нужно будет ввести​ стрелок» ;)​ Набирая эту формулу,​Модель.​А2:А5​Из этой статьи Вы​ меню выберите​ в столбцах​ при наличии пробелов​ Диспетчер имен). Должно​ список рассмотрен в​Формулы (Formulas)​ помощь. Прошу прощения​ в ячейке и​gling​

​или в меню​СМЕЩ​ вот такую формулу:​Возьмем, например, вот такой​ вы можете себе​Он может быть любой​;​ узнали, как можно​Data Validation​D​ в названиях Регионов:​ быть создано 5​ одноименной статье Многоуровневый​и создаем новый именованный​ за глупые вопросы.​ растащить далее по​: Именованный динамический диапазон.​Данные — Проверка (Data​(OFFSET)​=ДВССЫЛ(F3)​ список моделей автомобилей​ представить, что такой​ длины. Что еще​вызовите инструмент Проверка данных​ сделать простейшие связанные​(Проверка данных).​,​ =ДВССЫЛ(ПОДСТАВИТЬ(A5;» «;»_»)).​ имен.​ связанный список.​ диапазон​Я знаю, что делать,​ ячейкам:​

​maverick_77​ — Validation)​, который будет динамически​или =INDIRECT(F3)​

​ Toyota, Ford и​

​ промежуточный столбец существует,​ важно: стоит добавить​ (Данные/ Работа с​ выпадающие списки в​Откроется диалоговое окно​F​Теперь о​Можно подкорректировать диапазон у​Создание иерархических структур​Имена​

​ но не знаю​Код =ЕСЛИ(A2=0;B2*1;ЕСЛИ(A2=1;B2*1,25;ЕСЛИ(A2=2;B2*1,5;»Больше скидок​: koyaanisqatsi, gling, Принципиально,​из выпадающего списка выбираем​ ссылаться только на​где F3 — адрес​ Nissan:​ и вы увидите,​ к нему еще​ данными/ Проверка данных);​ Microsoft Excel. Вы​Data Validation​и​недостатках​

​ имени Регионы (вместо​

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

​куда потом девать​ нет»))) Пример во​ образ результата такой!​ вариант проверки​ ячейки моделей определенной​ ячейки с первым​Выделим весь список моделей​ что будет проще​ два меньших списка,​установите условие проверки Список;​ можете взять этот​

Ctrl + Shift + Enter.

​(Проверка вводимых значений).​H​

​.​ =списки!$A$2:$A$6 установить =списки!$A$2:$A$5,​ неудобств выпадающих списков​=СМЕЩ(Лист1!$I$2;0;0;СЧЁТЗ(Лист1!$I$2:$I$10)-СЧИТАТЬПУСТОТЫ(Лист1!I$2:I$10))​ тела…​ вложении. Результат по​ =) Уже радостно!​Список (List)​ марки. Для этого:​ выпадающим списком (замените​ Тойоты (с ячейки​ ;-)​ необходимых для Типа​

exceltable.com

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

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

​в поле Источник введите​ простой пример и​​Мы хотим дать пользователю​​. Так, например, рядом​При создании имен​ чтобы не отображалась​ связанных со слишком​в англоязычной версии =OFFSET(Лист1!$I$2;0;0;COUNTA(Лист1!$I$2:$I$10)-COUNTBLANK(Лист1!I$2:I$10))​Имеем в качестве примера​ столбцу​ Спасибо большое! =)))​и вводим в​Нажмите​ на свой).​ А2 и вниз​Для определения положения Легковой​ и Производителя, то​ =Сотрудники;​ использовать его для​ на выбор список​​ с​​ с помощью кнопки​ последняя пустая строка)​ большим количеством элементов.​

​Фактически, мы просто даем​ недельный график дежурств,​С​gling, у Вас,​

Выпадающий список с условием вȎxcel

​ качестве​Ctrl+F3​Все. После нажатия на​ до конца списка)​ Fiat, мы, конечно,​ есть к категории​​нажмите ОК.​​ решения реальных задач.​ вариантов, поэтому в​France​ меню Создать из​​На листе​Связанный список можно​ диапазону занятых ячеек​​ который надо заполнить​steysi​ конечно, изящней =)​​Источника (Source)​​или воспользуйтесь кнопкой​​ОК​​ и дадим этому​ будем использовать функцию​ (первый список) и​Теперь при выделении любой​Урок подготовлен для Вас​​ поле​​стоит индекс​​ выделенного фрагмента, все​​Таблица​

​ реализовать в EXCEL,​ в синем столбце​ именами сотрудников, причем​: ОО спасибо большое!!!​ Особенно хорошо, что​знак равно и​Диспетчер имен (Name manager)​содержимое второго списка​ диапазону имя​ ПОИСКПОЗ. Смотрите:​ подкатегории (второй список).​ ячейки из диапазона​ командой сайта office-guru.ru​Allow​2​ именованные диапазоны для​, для ячеек​

​ с помощью инструмента​ собственное название​ для каждого сотрудника​ ))) Сейчас попробую)))​ в выпадающем списке​​ имя нашего диапазона,​на вкладке​​ будет выбираться по​​Toyota​​ПОИСКПОЗ(B4&C4;F5:F39&G5:G39;0)​​ Эти дополнительные списки​​А2:А5​Источник: http://www.excel-user.com/2011/02/cascading-validation-lists.html​(Тип данных) выберите​, который соответствует списку​​ перечней Стран были​​A5:A22​​ Проверка данных (Данные/​​Имена​​ максимальное количество рабочих​​serg14​ не меняется последовательность​ т.е.​Формулы (Formulas)​ имени диапазона, выбранного​​. В Excel 2003​​Вышеописанное означает, что мы​ списки выглядят следующим​

Выпадающий список с условием вȎxcel

​, справа от ячейки​Перевел: Антон Андронов​List​ городов​ созданы одинаковой длины​сформируем выпадающий список​ Работа с данными/​​.​​ дней (смен) ограничено.​​: Здравствуйте!​​ машин относительно друг​=Модели​

​. В версиях до​

​ в первом списке.​

​ и старше -​ хотим знать позицию​ образом:​ будет появляться кнопка​

​Автор: Антон Андронов​​(Список). Это активирует​​2​ (равной максимальной длине​ для выбора Региона.​ Проверка данных) с​

​Осталось выделить ячейки B2:B8​​ Идеальным вариантом было​

  • ​Прошу вашей помощи​ друга. Это важно​Вуаля!​ 2003 это была​​Минусы​​ это можно сделать​ Легкового Fiatа (отсюда​Дело в том, что​ со стрелкой, нажав​При заполнении ячеек данными​ поле​. Позже Вы увидите,​ списка для региона​выделяем ячейки​ условием проверки Список​
  • ​ нашего графика и​ бы организовать в​ в решении такого​ для нас.​4 способа создать выпадающий​ команда меню​такого способа:​ в меню​ и связь B4&C4).​​ эти списки не​​ на которую можно​ иногда необходимо ограничить​Source​
  • ​ как этот индекс​ Европа (5 значений)).​A5:A22​ (пример создания приведен​

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

​ добавить в них​ ячейках B2:B8 выпадающий​ вопроса.​Можно ли формулы,​

Выпадающий список с условием вȎxcel

​ список в ячейках​Вставка — Имя -​В качестве вторичных (зависимых)​Вставка — Имя -​ Где? В нашем​

  • ​ должны иметь дубликатов​ выбрать необходимую фамилию.​​ возможность ввода определенным​​(Источник), где необходимо​​ будет использован.​​ Это привело к​​;​​ в данной статье)​ выпадающий список с​ список, но при​​Возможно ли каким-то​ которые Вы написали​ листа​
  • ​ Присвоить (Insert -​​ диапазонов не могут​​ Присвоить (Insert -​​ воображаемом вспомогательном столбце,​
  • ​ записей по Типу​Проверку данных можно настроить​​ списком значений. Например,​​ указать имя диапазона​Если Вы работаете в​​ тому, что связанные​ ​вызываем инструмент Проверка данных;​​ или с помощью​ элементами диапазона​ этом сделать так,​ образом в функции​ на листе «транспорт»,​

​Автоматическое создание выпадающих списков​ Name — Define)​ выступать динамические диапазоны​ Name — Define).​​ то есть: F5:F39&G5:G39.​ ​ и Производителю, находящихся​​ так, чтобы при​ при заполнении ведомости​ со странами. Введите​ Excel 2010, то​

  • ​ списки для других​​устанавливаем тип данных –​​ элемента управления формы​​Имена​​ чтобы уже занятые​​ ЕСЛИ() создать список​​ разместить на третьем​ при помощи инструментов​Создайте новый именованный диапазон​​ задаваемые формулами типа​В Excel 2007​ И здесь самая​
  • ​ в списке Моделей.​ вводе фамилий не​ ввод фамилий сотрудников​​ в этом поле​​ можете создать лист-источник​​ регионов содержали пустые​​ Список;​ Список (см. статью​. Для этого​

​ сотрудники автоматически убирались​

​ если условие не​

​ листе? А то​ надстройки PLEX​ с любым именем​СМЕЩ (OFFSET)​ и новее -​ большая сложность всей​ Вы можете создать​

​ из списка появлялось​​ с клавиатуры можно​​ «=Country» и жмите​ в отдельной рабочей​ строки.​в поле Источник вводим:​ Связанный список на​в Excel 2003 и​ из выпадающего списка,​ выполняется.​ этот лист у​

​Выбор фото из выпадающего​ (например​

​. Для первичного (независимого)​

  • ​ на вкладке​ формулы.​ их с помощью​
  • ​ окно с описанием​ заменить выбором из​​ОК​​ книге. Если же​Конечно, можно вручную откорректировать​ =Регионы​ основе элемента управления​ старше — откроем​ оставляя только свободных:​
  • ​serg14​ нас отчётный…​ списка​Модели​
  • ​ списка их использовать​Формулы (Formulas)​​Остальное уже проще, а​​ инструмента «Удалить дубликаты»​ ошибки (для этого​ определенного заранее списка​. Теперь нам нужно​ у Вас версия​ диапазоны или даже​
  • ​Теперь сформируем выпадающий список​ формы).​ меню​

​Чтобы реализовать подобный вариант​: файл в 2003​

Выпадающий список с условием вȎxcel

​gling​Выпадающий список с автоматическим​) и в поле​ можно, а вот​

  • ​с помощью​
  • ​ наибольшего внимания требует​​ (например, это показано​​ во вкладке Сообщение​​ (табеля).​​ сделать второй раскрывающийся​​ Excel 2003 года,​ вместо Именованных диапазонов​
  • ​ для столбца Страна​Создание Связанного списка на​​Данные — Проверка (Data​​ выпадающего списка выполним​ excel​​: На другом листе​​ удалением уже использованных​Ссылка (Reference)​ вторичный список должен​​Диспетчера имен (Name Manager)​

​ функция СЧЁТЕСЛИМН, которая​

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

  • ​ в этом видео​ для ввода введите​Одним из вариантов заполнения​
  • ​ список, чтобы пользователи​ и Вы планируете​ создать Динамические диапазоны.​
  • ​ (это как раз​ основе Проверки данных​
  • ​ — Validation)​ несколько простых шагов.​VLad777​
  • ​ эти формулы будут​ элементов​в нижней части​

planetaexcel.ru

Выпадающий список, формируемый по условиям (Формулы/Formulas)

​ быть определен жестко,​​. Затем повторим то​
​ проверяет, сколько есть​ продолжительностью около 2​
​ необходимый текст).​ ячеек является выбор​ могли выбрать город.​ использовать именованный диапазон,​ Но, при большом​ и будет желанный​
​ рассмотрим на конкретном​
​,​Сначала давайте подсчитаем кто​: для ячейки всего​ выглядеть так​Динамическая выборка данных для​ окна введите руками​ без формул. Однако,​ же самое со​ Легковых Fiatов. В​ минут). Когда мы​Недостатком​ значений из заранее​ Мы поместим этот​
​ то значения должны​ количестве имен делать​ Связанный список).​ примере.​в Excel 2007 и​ из наших сотрудников​ используйте ф-цию СЧЕТЕСЛИ.​200?’200px’:»+(this.scrollHeight+5)+’px’);»>=ЕСЛИОШИБКА(ВПР(СТРОКА(A1);Транспорт!$A$3:$B$8;2;0);»»)​ выпадающего списка функциями​ следующую формулу:​ это ограничение можно​ списками Форд и​ частности, она проверяет,​ это сделали, тогда​этого решения является​ определенного списка в​
​ раскрывающийся список в​ находиться в той​ это будет достаточно​выделяем ячейки​Задача​ новее — жмем​ уже назначен на​для выпадающего диап.​но и в​ ИНДЕКС и ПОИСКПОЗ​

​=СМЕЩ($A$1;ПОИСКПОЗ($G$7;$A:$A;0)-1;1;СЧЁТЕСЛИ($A:$A;$G$7);1)​​ обойти, создав отсортированный​

​ Ниссан, задав соответственно​​ сколько раз в​ …​

​ то, что у​​ MS EXCEL. Предположим,​ ячейку​ же книге, можно​ трудоемко.​B5:B22​

​: Имеется перечень Регионов,​​ кнопку​

​ дежурство и на​​ макрос нужен.​ именованном диапазоне «Врейс»​maverick_77​=OFFSET($A$1;MATCH($G$7;$A:$A;0)-1;1;COUNTIF($A:$A;$G$7);1)​
​ список соответствий марка-модель​ имена диапазонам​ списке встречаются такие​​ пользователя есть потенциальная​ что в таблицу​B2​ на другом листе.​
​Кроме того, при​;​ состоящий из названий​Проверка данных (Data Validation)​ сколько смен. Для​vikttur​ тоже нужно сделать​

​: Здравствуйте.​​Ссылки должны быть абсолютными​ (см. Способ 2).​Ford​​ записи, которые в​​Для ячеек, которые должны​ возможность ввести в​ ведомости необходимо вводить​. А теперь внимание​Мы будем использовать именованные​ добавлении новых Регионов​вызываем инструмент Проверка данных;​ четырех регионов. Для​на вкладке​

​ этого добавим к​​: Вариант без VBA,​
​ ссылку на новый​Помогите, пжл, решить​ (со знаками $).​Имена вторичных диапазонов должны​и​ столбце F5:F39 имеют​ стать раскрывающимися списками​ ведомость повторяющиеся фамилии.​ фамилии сотрудников. Чтобы​ – фокус! Нам​ диапазоны и сделаем​ придется вручную создавать​устанавливаем тип данных –​

​ каждого Региона имеется​​Данные (Data)​ зеленой таблице еще​ но «не требуется»​ лист где будут​ насущную проблему.​ После нажатия Enter​
​ совпадать с элементами​

​Nissan​​ значение Легковой, а​ в меню «Данные»​​ Для того, чтобы​

​ не ошибиться с​​ нужно проверить содержимое​
​ так, чтобы эти​ именованные диапазоны для​ Список;​ свой перечень Стран.​
​В открывшемся окне выберем​ один столбец, введем​ тоже нужно выбирать»​ эти формулы. Столбец​Создаём планировщик маршрутов​

excelworld.ru

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

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

​ Пользователь должен иметь​​ в списке допустимых​​ в него следующую​​ (столбец G).​ А на листе​ транспорта. На маршрут​ автоматически добавлены имена​
​ Т.е. если в​При задании имен помните​ — Fiat. Функция​ и как тип​​ фамилий, можно использовать​

​ предварительно создать список​​ страны (ячейка B1),​ работали во всех​

CyberForum.ru

Функция «ЕСЛИ()» + выпадающий список

​Чтобы не создавать десятки​​ =ДВССЫЛ(A5)​

​ возможность, выбрав определенный​ значений вариант​ формулу:​
​Вариант с условным​ Транспорт можно скрыть​ можно отправить машину​ листов — не​ нем есть текст​

​ о том, что​​ выглядит так:​ данных выбираем «Список».​

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

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

​ с пробелами, то​​ имена диапазонов в​СЧЁТЕСЛИМН(F5:F39;B4;G5:G39;C4)​Для Типа как источник​

​ Ввод данных из​​ а заполнение ведомости​

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

​и укажем​​ версии =COUNTIF($B$2:$B$8;E2)​ I:J.​
​maverick_77​ «условие 1» и​
​Функция​

​ придется их заменять​​ Excel не должны​

​А вся формула для​​ данных мы просто​ списка значений. Часть​ свести к выбору​ с городами. Если​ именованные диапазоны для​

​ построении Связанного списка.​​ активной ячейкой была​ Выпадающего списка нужную​Источник (Source)​Фактически, формула просто вычисляет​serg14​: gling, Спасибо! =)​ «условие 2″​СМЕЩ (OFFSET)​ на подчеркивания с​ содержать пробелов, знаков​ раскрывающегося списка это:​ указываем диапазон B7:B9.​
​ 2. Выпадающий список​ фамилии из этого​ пользователь выберет​ наших списков. На​ Рассмотрим этот подход​

​B5​​ ему Страну из​
​данных:​ сколько раз имя​: Благодарю за ответ.​
​Но у меня​Итого имеем:​

​умеет выдавать ссылку​​ помощью функции​ препинания и начинаться​Если вы планируете использовать​

planetaexcel.ru

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

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

Постановка задачи

​ вкладке​ в другой статье:​, т.к. мы используем​ этого Региона.​Вот и все! Теперь​ сотрудника встречалось в​ А возможно привести​ возникли проблемы, когда​- на одном​ на диапазон нужного​ПОДСТАВИТЬ (SUBSTITUTE)​ обязательно с буквы.​ эту формулу в​ используем формулу, которая​Итак, как сделать два​Инструмент Проверка данных (Данные/​

Выпадающий список с условием вȎxcel

​, то мы должны​Formulas​ Расширяемый Связанный список.​

Шаг 1. Кто сколько работает?

​ относительную адресацию.​Таблицу, в которую будут​ при назначении сотрудников​ диапазоне с именами.​ пример такого макроса?​ в столбце с​ листе список номеров​ размера, сдвинутый относительно​, т.е. формула будет​ Поэтому если бы​

​ нескольких ячейках -​ подробно описана здесь.​

Выпадающий список с условием вȎxcel

​ связанных списка в​ Работа с данными/​ обратиться к базе​(Формулы) есть команда​

Шаг 2. Кто еще свободен?

​ПРЕДСТАВЬТЕ СИТУАЦИЮ:​Тестируем. Выбираем с помощью​ заноситься данные с​ на дежурство их​Теперь выясним, кто из​serg14​ номерами машин появились​ машин (бортов) с​ исходной ячейки на​ выглядеть как =ДВССЫЛ(ПОДСТАВИТЬ(F3;»​

​ в одной из​

Выпадающий список с условием вȎxcel

Шаг 3. Формируем список

​ не забудьте обозначить​ Она выглядит так:​ Excel: категория, подкатегория​ Проверка данных) с​ с индексом​Name Manager​Мы хотим создать​ выпадающего списка в​ помощью Связанного списка,​ имена будут автоматически​ наших сотрудников еще​: Спасибо огромное!!!​

​ буквы. Я в​

​ признаками по условиям​

​ заданное количество строк​

Выпадающий список с условием вȎxcel

​ «;»_»))​ марок автомобилей присутствовал​ ячейки как абсолютные​Модель — описание для​ и категория более​ условием проверки Список,​3​(Диспетчер имён). Нажав​ в Excel небольшую​ ячейке​ разместим на листе​

Шаг 4. Создаем именованный диапазон свободных сотрудников

  • ​ удаляться из выпадающего​ свободен, т.е. не​serg14​​ формуле в диспетчере​ (в приложенном примере​ и столбцов. В​
  • ​Надо руками создавать много​ бы пробел (например​ ссылки! И еще​​ этой записи сделаем​​ нижнего уровня. Своими​​ как раз предназначен​

​, в которой хранятся​ на нее, откроется​​ табличку, где можно​​A5​

​Таблица​

​ списка, оставляя только​

Выпадающий список с условием вȎxcel

​ исчерпал запас допустимых​: Только я не​ имён вместо СЧЁТ​ — лист «Транспорт»).​​ более понятном варианте​​ именованных диапазонов (если​

Шаг 5. Создаем выпадающий список в ячейках

​ Ssang Yong), то​ СУПЕРВАЖНО, чтобы вся​ таким же самым​ словами в данном​ для решения нашей​​ названия городов Португалии.​​ диалоговое окно​

  • ​ выбрать страну и​Регион – Америка,​. См. файл примера​​ тех, кто еще​ смен. Добавим еще​​ очень понял как​
  • ​ поставил СЧЁТЗ и​ У каждой машины​ синтаксис этой функции​​ у нас много​​ его пришлось бы​​ запись была подтверждена​

​ образом.​ случае нижний уровень​ задачи: с помощью​​ Мы воспользуемся функцией​​Name Manager​​ соответствующий ей город.​​ вызываем связанный список​

Выпадающий список с условием вȎxcel

​ Связанный_список.xlsx​ свободен.​ один столбец и​ это сделать…не подскажите​ в выпадающем списке​ значения условий меняется​ таков:​ марок автомобилей).​

planetaexcel.ru

​ заменить в ячейке​

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

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

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

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

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

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

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

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

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

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

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



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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Макрос.

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

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

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

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

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

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

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

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

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

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

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

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

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

    Выбор нескольких значений из выпадающего списка Excel

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

    1. Создаем стандартный список с помощью инструмента «Проверка данных». Добавляем в исходный код листа готовый макрос. Как это делать, описано выше. С его помощью справа от выпадающего списка будут добавляться выбранные значения.
    2. Private Sub Worksheet_Change(ByVal Target As Range)
          On Error Resume Next
          If Not Intersect(Target, Range("Е2:Е9")) Is Nothing And Target.Cells.Count = 1 Then
              Application.EnableEvents = False
              If Len(Target.Offset(0, 1)) = 0 Then
                  Target.Offset(0, 1) = Target
              Else
                  Target.End(xlToRight).Offset(0, 1) = Target
              End If
              Target.ClearContents
              Application.EnableEvents = True
          End If
      End Sub
       
    3. Чтобы выбранные значения показывались снизу, вставляем другой код обработчика.
    4. Private Sub Worksheet_Change(ByVal Target As Range)
          On Error Resume Next
          If Not Intersect(Target, Range("Н2:К2")) Is Nothing And Target.Cells.Count = 1 Then
              Application.EnableEvents = False
              If Len(Target.Offset(1, 0)) = 0 Then
                  Target.Offset(1, 0) = Target
              Else
                  Target.End(xlDown).Offset(1, 0) = Target
              End If
              Target.ClearContents
              Application.EnableEvents = True
          End If
      End Sub
       
    5. Чтобы выбираемые значения отображались в одной ячейке, разделенные любым знаком препинания, применим такой модуль.

    6. Private Sub Worksheet_Change(ByVal Target As Range)
          On Error Resume Next
          If Not Intersect(Target, Range("C2:C5")) Is Nothing And Target.Cells.Count = 1 Then
              Application.EnableEvents = False
              newVal = Target
              Application.Undo
              oldval = Target
              If Len(oldval) <> 0 And oldval <> newVal Then
                  Target = Target & "," & newVal
              Else
                  Target = newVal
              End If
              If Len(newVal) = 0 Then Target.ClearContents
              Application.EnableEvents = True
          End If
      End Sub

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

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

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

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

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

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

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

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

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

Введение

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

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

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

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

Задача:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Заключение

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

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

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

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

Зависимые выпадающие списки в Excel

Изучим простой способ создания зависимых (также называют связанных) выпадающих списков в Excel.

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


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

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

В основе создания связанных выпадающих списков лежит применение функции ДВССЫЛ, которая позволяет преобразовывать текст из ячейки в ссылку.
Другими словами, если в ячейку введено текстовое значение «А1», то функция ДВССЫЛ вернет ссылку на ячейку А1.
Теперь зададим имена диапазонам состоящим из всех видов блюд каждой конкретной категории.
Для этого в панели вкладок выбираем Формулы -> Определенные имена -> Присвоить имя:


Выделяем диапазон ячеек A2:A6 и создаем диапазон с именем Пицца, аналогичные действия повторяем и для списков с суши (имя диапазона — Суши) и пастой (имя диапазона — Паста):


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

Создадим первый выпадающий список в ячейке A10, состоящий из категорий блюд (Пицца, Суши и Паста). В панели вкладок выбираем Данные -> Работа с данными -> Проверка данных, указываем тип данных Список и в качестве источника выделяем диапазон A1:C1:


Теперь создаем второй выпадающий список, полностью повторяем действия с созданием первого списка, только в поле Источник записываем формулу =ДВССЫЛ(A10):


Имена созданных диапазонов обязательно должны совпадать с элементами первого списка, поэтому если в первом списке есть категории содержащие пробелы, то при обращении к имени диапазона необходимо заменить пробелы на нижние подчеркивания.
Это можно осуществить с помощью функции ПОДСТАВИТЬ, которая позволяет заменить старый текст (пробел) на новый текст (нижнее подчеркивание) в текстовой строке, т.е. в нашем случае формула примет вид =ДВССЫЛ(ПОДСТАВИТЬ(A10;» «;»_»)).
Также минусом данного способа создания списков является невозможность использования динамических именованных диапазонов.

Подробно ознакомиться с примером зависимых выпадающих списков — скачать пример.

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

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

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

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

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

Создание Связанного списка на основе Проверки данных рассмотрим на конкретном примере.

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

Таблицу, в которую будут заноситься данные с помощью Связанного списка, разместим на листе Таблица. См. файл примера Связанный_список.xlsx

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

Обратите внимание, что названия регионов (диапазон А2:А5 на листе Списки) в точности должны совпадать с заголовками столбцов, содержащих названия соответствующих стран (В1:Е1).

Присвоим имена диапазонам, содержащим Регионы и Страны (т.е. создадим Именованные диапазоны). Быстрее всего это сделать так:

  • выделитьячейки А1:Е6 на листе Списки(т.е. диапазон, охватывающий все ячейки с названиями Регионов и Стран);
  • нажать кнопку «Создать из выделенного фрагмента» (пункт меню Формулы/ Определенные имена/ Создать из выделенного фрагмента );
  • Убедиться, что стоит только галочка «В строке выше»;
  • Нажать ОК.

Проверить правильность имени можно через Диспетчер Имен ( Формулы/ Определенные имена/ Диспетчер имен ). Должно быть создано 5 имен.

Можно подкорректировать диапазон у имени Регионы (вместо =списки!$A$2:$A$6 установить =списки!$A$2:$A$5 , чтобы не отображалась последняя пустая строка)

На листе Таблица, для ячеек A5:A22 сформируем выпадающий список для выбора Региона.

  • выделяем ячейки A5:A22;
  • вызываем инструмент Проверка данных;
  • устанавливаем тип данных – Список;
  • в поле Источник вводим: =Регионы

Теперь сформируем выпадающий список для столбца Страна (это как раз и будет желанный Связанный список).

  • выделяем ячейки B5:B22;
  • вызываем инструмент Проверка данных;
  • устанавливаем тип данных – Список;
  • в поле Источник вводим: =ДВССЫЛ(A5)

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

Тестируем. Выбираем с помощью выпадающего списка в ячейке A5 РегионАмерика, вызываем связанный список в ячейке B5 и балдеем – появился список стран для Региона Америка: США, Мексика

Теперь заполняем следующую строку. Выбираем в ячейке A6 РегионАзия, вызываем связанный список в ячейке B6 и опять балдеем: Китай, Индия

Необходимо помнить, что в именах нельзя использовать символ пробела. Поэтому, при создании имен, вышеуказанным способом, он будет автоматически заменен на нижнее подчеркивание «_». Например, если вместо Америка (ячейка В1) ввести «Северная Америка» (соответственно подкорректировав ячейку А2), то после нажатия кнопки Создать из выделенного фрагмента будет создано имя «Северная_Америка». В этом случае формула =ДВССЫЛ(A5) работать не будет, т.к. при выборе региона «Северная Америка» функция ДВССЫЛ() не найдет соответствующего имени. Поэтому формулу можно подкорректировать, чтобы она работала при наличии пробелов в названиях Регионов: =ДВССЫЛ(ПОДСТАВИТЬ(A5;» «;»_»)) .

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

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

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

Сводные таблицы Excel

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

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

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

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

Список моделей автомобилей

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

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

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

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

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

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

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

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

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

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

Список соответствий и функции СМЕЩ и ПОИСКПОЗ

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

  • дать имя диапазону D1:D3 (например, Марки) с помощью Диспетчера имен (Name Manager) с вкладки Формулы (Formulas).
  • выбрать на вкладке Данные (Data) команду Проверка данных (Data Validation).
  • выбрать из выпадающего списка вариант проверки Список (List) и указать в качестве Источника (Source) =Марки или просто выделить ячейки D1:D3 (если они на том же листе, где список).

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

  • Нажмите Ctrl+F3 или воспользуйтесь кнопкой Диспетчер имен (Name Manager) на вкладке Формулы (Formulas).
  • Создайте новый именованный диапазон с любым именем (например, Модели) и в поле Ссылка (Reference) в нижней части окна введите руками следующую формулу:
    =СМЕЩ($A$1;ПОИСКПОЗ($G$7;$A:$A;0)-1;1;СЧЁТЕСЛИ($A:$A;$G$7);1)
    =OFFSET($A$1;MATCH($G$7;$A:$A;0)-1;1;COUNTIF($A:$A;$G$7);1) .

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

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

Функция СМЕЩ умеет выдавать ссылку на диапазон нужного размера

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

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

Ссылки должны быть абсолютными (со знаками $)

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

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

Двухуровневый выпадающий список в Excel

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

Первый способ создания двухуровнего списка

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

Теперь приступим к созданию первого выпадающего списка группы (в моем случае — список стран):

  1. Выберите ячейку, в которую будете вставлять выпадающий список;
  2. Переходим на вкладку ленты Данные;
  3. Выбираем команду Проверка данных;
  4. В выпадающем списке выбираем значение Список;
  5. В поле Источник указываем следующую формулу =ДВССЫЛ(«Таблица1[#Заголовки]»).

Осталось создать второй зависимый выпадающий список – список подгрупп.

Смело повторяем 4 первых пункта описанных выше. Источником в окне Проверка данных для второго выпадающего списка будет служить формула =ДВССЫЛ(«Таблица1[«&F2&»]»). Ячейка F2 в данном случае — значение первого выпадающего списка.

Второй способ создания двухуровнего списка

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

ВАЖНО! Перед созданием зависимого списка по подгруппам необходимо отсортировать исходную таблицу по первому столбцу (столбец с группой) далее будет понятно зачем это делается.

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

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

Теперь самая сложная часть — указать в Источнике динамическую ссылку на диапазон со значениями второго выпадающего списка (списка подгрупп). Решать ее будем с помощью функции СМЕЩ(ссылка, смещ_по_строкам, смещ_по_столбцам, [высота], [ширина]), которая возвращает ссылку на диапазон, отстоящий от ячейки или диапазона ячеек на заданное число строк и столбцов.

  • Ссылка в нашем случае — $A$1 — верхний левый угол исходной таблицы;
  • Смещ_по_строкамПОИСКПОЗ(F3;$A$1:$A$67;0)-1 — номер строки со значением искомой группы (в моем случае страны ячейка F3) минус единица;
  • Cмещ_по_столбцам1 — так как нам необходим столбец с подгруппами (городами);
  • [Высота]СЧЁТЕСЛИ($A$1:$A$67;F3) — количество подгрупп в искомой группе (количество городов в стране F3);
  • [Ширина]1 — так как это ширина нашего столбца с подгруппами.

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

Связанные выпадающие списки.xls (216,5 KiB, 1 364 скачиваний)

Чтобы понять о чем пойдет речь в статье сначала необходимо понимать что такое выпадающий список и как его создать. Теперь попробуем разобраться что значит выражение «связанный выпадающий список». Я бы еще назвал такой список зависимым. Т.е. когда список значений одного выпадающего списка зависит от значения, выбранного в другом выпадающем списке или просто забитого в ячейку. Представим ситуацию: есть ячейка А2 . В ней создан выпадающий список со значениями: Овощи, Фрукты, Мясо, Напитки . А в ячейке В2 нам нужен такой список, чтобы значения этого самого списка изменялись в зависимости от того, какое значение мы укажем в ячейке А2 — т.е. список выбранной категории продуктов. Например выбрали в А2 значение Овощи — в В2 появился выпадающий список, содержащий значения: Морковь, Капуста, Картошка, Редиска, Помидоры. Выбрали в А2 Мясо — в В2 появился выпадающий список, содержащий значения: Говядина, Телятина, Свинина, Курица, Индейка . И т.д.

Подготовка
Для начала нам потребуется создать все эти списки. Что-то вроде этого:

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

Создание зависимых списков
В ячейке А2 создаем «список списков» — основной список, на основании значений которого будет создаваться второй список. Этот список может быть создан любым способом (как создать выпадающий список). Назовем его Список категорий.
В ячейке В2 потребуется создать список на основании формулы, хоть по сути и так же, как и остальные: вкладка Данные (Data)Проверка данных (Data validation)Список (List) . Но теперь вместо прямого указания имени списка необходимо указать ссылку на именованный диапазон, который мы выберем в Списке категорий(ячейка А2 ), на основании его имени. В этом нам поможет функция ДВССЫЛ (INDIRECT) . Просто записываем эту формулу в поле Источник (Source) : =ДВССЫЛ( $A2 )

На что обратить внимание: если вы планируете распространять такой список на столбец, то ссылка должна выглядеть именно так: $A2. Перед цифрой не должно быть знака доллара ($A$2 — неправильно). Иначе зависимый список будет всегда формироваться исключительно на основании значении ячейки А2.

Источник из другой книги
Сами списки товара могут находится и в другой книге. Если книга называется Книга со списком.xls и на Лист1 в ячейке А1 в этой книге находится имя нужного нам списка, то формула будет выглядеть так:
=ДВССЫЛ(«‘[Книга со списком.xls]Лист1’!»&$A$1)
На что обратить внимание: лучше всегда перед именем книги и после имени листа ставить апостроф — ‘. Так вы избежите проблем и недопонимания, если имя листа или книги содержит пробелы и иные специфические символы. В отличии от списков внутри одной книги в данном случае знак доллара должен быть и перед буквой и перед цифрой. В ином случае возможны ошибки (если, конечно, это не было сделано специально с пониманием того, что делалось).

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

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

И ничего с этими ограничениями не поделать при подобном подходе.

Tips_Lists_Connect_Validation.xls (26,5 KiB, 16 309 скачиваний)

Статья помогла? Поделись ссылкой с друзьями!

Поиск по меткам

Здравствуйте!
В связанных списках для заголовков одной таблицы использую ДВССЫЛ таким образом =ДВССЫЛ(«Таблица[#Заголовки]»), дабы при добавлении нового столбца или изменении заголовков в динамической таблице автоматом отображались данные изменения и добавления.
Но в некоторых случаях происходит некое зависание, данный список не раскрывается, он будто не видит данных которые необходимо отобразить.
Подскажите в чем может быть причина?

Поделитесь своим мнением

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

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