Условия формирования списков в excel

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

Хочу сделать список должников документов в excel. Как сделать так чтобы строка в которой есть слово «нет» (т.е у этого контрагента нет документов), автоматически копировалась на отдельный лист.

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

формирование списка с помощью формул

Итак, посмотрите на рисунок выше, к чему мы должны прийти. Список должников должен автоматически пополняться фамилиями, если в столбце «B» будет появляться слово «Нет». Нам потребуется добавить вспомогательный столбец. Для удобства мы добавим его самым первым, чтобы можно было использовать функцию ВПР (чтобы искомое значение находилось левее возвращаемого значения), можно было бы использовать функцию ИНДЕКС, в этом случаем вспомогательный столбец можно было разместить где угодно.

В данном столбце мы пропишем такую формулу

=СТРОКА()

 Функция так и прописывается без аргументов. Эта функция возвращаем нам номер строки. То есть если эта функция будет прописана в третьей строке, то результатом будет 3 и так далее. Единственное, нам нужно, чтобы вычисления номера строки было только в тех строках, где есть слово «Нет». Для этого воспользуемся функцией ЕСЛИ и сделаем проверку. Если в столбце «B» есть слово «Нет», то вычислять номер строки, если нет, то указать в ячейку пусто. Формула примет следующий вид.

=ЕСЛИ(B2=»Нет»;СТРОКА();»»)

Протягиваем формулу на все строки.

формируем список с помощь формул - строка

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

Далее переходим в столбец «Е», это тоже будет вспомогательный столбец, здесь мы воспользуемся функцией НАИМЕНЬШИЙ, функция выглядит следующим образом

=НАИМЕНЬШИЙ(A:A;k)

где k — это порядок старшинства. Например, если указать 2, то будет выбрано второе наименьшее число из столбца «A». Нам же нужно, чтобы сначала было самое маленькое число и потом оно должно  увеличиваться, то есть k должно начинаться с единицы и с каждой ячейке должно увеличиваться. Для этого мы можем сделать еще один дополнительный столбец и прописать пункты по порядку 1, 2, 3 и так далее и сделать ссылку на эти ячейки, но мы попробуем обойтись без вспомогательного столбца. Вместо k мы можем так же воспользоваться функцией СТРОКА(), которая при протягивании вниз как раз будет увеличиваться на единицу, но так как формулу мы начинаем со второй строки, а нам нужна первая k равная 1, то мы можем прописать СТРОКА()-1, в итоге формула примет вид в ячейке «E2», эту формулу протянем вниз с запасом.

=НАИМЕНЬШИЙ(A:A;СТРОКА()-1)

Единственное, что когда все числа из столбца «A» закончатся, то формула будет выдавать ошибку «#ЧИСЛО», поэтому с помощью функции ЕСЛИОШИБКА, сделаем проверку и если возвращается ошибка, то будем указывать пустую ячейку.

=ЕСЛИОШИБКА(НАИМЕНЬШИЙ(A:A;СТРОКА()-1);»»)

Вот теперь, всё как необходимо. Осталось последнее действие. С помощью функции ВПР, по искомому значению из столбца «E», возвращаем соответствующие фамилии.

=ВПР(E2;A:B;2;0)

Сделаем так же проверку, если в столбце «E» будет пустая ячейка, то будет возвращать пусто, если ячейка не пустая, то будем выполнять функцию. Пропишем итоговую формулу в ячейке «F2» и протянем формулу вниз так же с запасом.

=ЕСЛИ(E2=»»;»»;ВПР(E2;A:B;2;0))

формируем список без формул
Все, теперь ФИО будет автоматически появляться, когда напротив фамилии будет появляться слово «Нет».

Скачать пример файла https://yadi.sk/i/9HjjoSwzf4jS7

Понравилась статья? Ставьте лайки, вступайте в нашу группу ВКонтакте.

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

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

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

Для динамических диапазонов создаем новый рабочий лист Excel и переименовываем его в «Списки». Заполняем столбцы наборами элементов:

Наборы элементов для раскрывающихся списков

На вкладке «Формулы» ленты инструментов нажимаем ссылку «Присвоить имя»:

Создание имени динамического диапазона

В поле «Имя» пишем «Группа», в поле «Диапазон» вставляем формулу =СМЕЩ(Списки!$A$2;0;0;СЧЁТЗ(Списки!$A:$A)-1;1) и нажимаем кнопку «OK». Первый именованный динамический диапазон создан.

Повторяем эти действия для создания остальных именованных диапазонов, формулы для которых перечислены в таблице:

Имя Диапазон
Группа =СМЕЩ(Списки!$A$2;0;0;СЧЁТЗ(Списки!$A:$A)-1;1)
Грибы =СМЕЩ(Списки!$B$2;0;0;СЧЁТЗ(Списки!$B:$B)-1;1)
Насекомые =СМЕЩ(Списки!$C$2;0;0;СЧЁТЗ(Списки!$C:$C)-1;1)
Рыбы =СМЕЩ(Списки!$D$2;0;0;СЧЁТЗ(Списки!$D:$D)-1;1)

Все имена диапазонов можно просмотреть в диспетчере имен («Формулы» — «Диспетчер имен»):

Диспетчер имен в Excel

В диспетчере имен доступно создание, изменение и удаление имен диапазонов.

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

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

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

В открывшемся окне «Проверка вводимых значений» выбираем тип данных «Список», указываем источник «=Группа» и нажимаем кнопку «OK»:

Проверка вводимых значений для столбца «Группа» в таблице Excel

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

Раскрывающийся список по условию

Для создания выпадающего списка по условию выбираем ячейку под названием столбца «Вид» и нажимаем ссылку «Проверка данных» на вкладке «Данные» ленты инструментов. В открывшемся окне «Проверка вводимых значений» выбираем тип данных «Список», указываем источник =ЕСЛИ(A2="Грибы";Грибы;ЕСЛИ(A2="Насекомые";Насекомые;ЕСЛИ(A2="Рыбы";Рыбы;Списки!$E$1))) и нажимаем кнопку «OK».

Список, раскрывающийся с набором элементов по условию

Если в первом раскрывающемся списке (Группа) не будет выбрана ни одна позиция, во втором выпадающем списке (Вид) будет отображаться значение ячейки по адресу Списки!$E$1 (Выберите группу).


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

Связанный список в 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

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

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

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

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

Ваш браузер не поддерживает видео. Установите Microsoft Silverlight, Adobe Flash Player или Internet Explorer 9.

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

    Ctrl+T

    .

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

    Примечания: 

    • Почему данные следует поместить в таблицу? Когда ваши данные находятся в таблице при
      добавлении или удалении элементов из списка
      , любые раскрывающиеся списки, основанные на этой таблице, будут автоматически обновляться. Дополнительные действия не требуются.

    • Сейчас самое время
      отсортировать данные в диапазоне или таблице
      в раскрывающемся списке.

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

  3. Перейдите на вкладку
    данных

    на ленте, затем


    в проверку данных

    .

    Примечание: 
    Если вы не можете щелкнуть

    проверку данных

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

  4. На вкладке

    Параметры

    в поле

    Разрешить

    щелкните

    Список

    .

  5. Щелкните поле

    Источник

    и выделите диапазон списка. В примере данные находятся на листе «Города» в диапазоне A2:A9. Обратите внимание на то, что строка заголовков отсутствует в диапазоне, так как она не является одним из вариантов, доступных для выбора.

    Параметры списка проверки данных

  6. Если можно оставить ячейку пустой, установите флажок

    Игнорировать пустые

    ячейки.

  7. Установите флажок

    Список допустимых значений

  8. Откройте вкладку

    Сообщение для ввода.

    • Если вы хотите, чтобы при выборе ячейки появлялось всплывающее сообщение, установите флажок

      Отображать подсказку, если ячейка является текущей

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

      Вкладка "Сообщение для ввода" в диалоговом окне "Проверка данных"

  9. Откройте вкладку

    Сообщение об ошибке.

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

      Выводить сообщение об ошибке,

      выберите параметр в поле

      Вид

      и введите заголовок и сообщение. Если вы не хотите, чтобы сообщение отображалось, снимите этот флажок.

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

  10. Не знаете, какой параметр выбрать в поле

    Вид

    ?

    • Чтобы отобразить сообщение, не препятствующее вводу данных, которые не содержатся в раскрывающемся списке, выберите вариант

      Сведения

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

    • Чтобы заблокировать пользователям ввод данных, которые не содержатся в раскрывающемся списке, выберите вариант

      Остановка

      .

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

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

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

Раскрывающийся список со значениями "Высокий", "Средний" и "Низкий"

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

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

  2. Выделите ячейки, для которых нужно ограничить ввод данных.

  3. На вкладке

    Данные

    в группе

    Инструменты

    щелкните

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

    или

    Проверить

    .

    Меню "Данные" на панели инструментов Excel с выбранной кнопкой "Проверка данных"

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

  4. Откройте вкладку

    Параметры

    и во всплывающем меню

    Разрешить

    щелкните

    пункт Список

    .

  5. Щелкните поле

    Источник

    и выделите на листе список допустимых элементов.

    Диалоговое окно свернется, чтобы было видно весь лист.

  6. Нажмите клавишу ВВОД или кнопку

    Развернуть
    Кнопка "Развернуть" в диалоговом окне "Проверка данных"
    , чтобы развернуть диалоговое окно, а затем щелкните

    ОК

    .

    Советы: 

    • Значения также можно ввести непосредственно в поле

      Источник

      через запятую.

    • Чтобы изменить список допустимых элементов, просто измените значения в списке-источнике или диапазон в поле

      Источник

    • Можно указать собственное сообщение об ошибке, которое будет отображаться при вводе недопустимых данных. На вкладке

      Данные

      щелкните

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

      или

      Проверить

      , а затем щелкните

      Сообщение об ошибке

      .

См. также

Применение проверки данных к ячейкам

  1. На новом листе введите данные, которые должны отображаться в раскрывающемся списке. Желательно, чтобы элементы списка содержались в
    таблице Excel
    .

    Примечания: 

    • Почему данные следует поместить в таблицу? Когда ваши данные находятся в таблице при
      добавлении или удалении элементов из списка
      , любые раскрывающиеся списки, основанные на этой таблице, будут автоматически обновляться. Дополнительные действия не требуются.

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

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

  3. Откройте вкладку

    Данные

    на ленте и щелкните кнопку

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

    .

  4. На вкладке

    Параметры

    в поле

    Разрешить

    щелкните

    Список

    .

  5. Если вы уже создали таблицу с элементами раскрывающегося списка, щелкните поле

    Источник

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

    Источник

    через запятую. Например:


    Фрукты;Овощи;Зерновые культуры;Молочные продукты;Перекусы

  6. Если можно оставить ячейку пустой, установите флажок

    Игнорировать пустые

    ячейки.

  7. Установите флажок

    Список допустимых значений

  8. Откройте вкладку

    Сообщение для ввода.

    • Если вы хотите, чтобы при выборе ячейки появлялось всплывающее сообщение, установите флажок

      Показывать сообщения

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

  9. Откройте вкладку

    Сообщение об ошибке.

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

      Показывать оповещения

      , выберите параметр в поле

      Тип

      , и введите заголовок и сообщение. Если вы не хотите, чтобы сообщение отображалось, снимите этот флажок.

  10. Щелкните

    ОК

    .

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

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.

См. также

Добавление и удаление элементов раскрывающегося списка

Видео: создание раскрывающихся списков и управление ими

Общие сведения о таблицах 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
  • Выбор фото из выпадающего списка
  • Выпадающий список с автоматическим удалением уже использованных элементов
  • Динамическая выборка данных для выпадающего списка функциями ИНДЕКС и ПОИСКПОЗ 

Содержание

  • 1 Пример создания зависимого выпадающего списка в ячейке Excel
  • 2 Список категорий и подкатегорий в зависимом выпадающем списке Excel
    • 2.1 Зависимый выпадающий список подкатегорий
    • 2.2 Рабочая исходная таблица Excel
  • 3 1. Имена диапазонов ячеек
  • 4 2. Создание раскрывающегося списка для категории
    • 4.1 3. Создание зависимого выпадающего списка для подкатегории
  • 5 Проверка вводимых значений для подкатегории в зависимом выпадающем списке
  • 6 Видео-урок
  • 7 Как создать выпадающий список в Экселе на основе данных из перечня
  • 8 Как сделать выпадающий список в Excel используя ручной ввод данных
  • 9 Как создать раскрывающийся список в Эксель с помощью функции СМЕЩ
    • 9.1 Как эта формула работает?
  • 10 Как сделать выпадающий список в Excel с подстановкой данных (с использованием функции СМЕЩ)
  • 11 Как создать выпадающий список в Excel с автоматической подстановкой данных
  • 12 Как скопировать выпадающий список в Excel
  • 13 Как выделить все ячейки, содержащие выпадающий список в Экселе
  • 14 Как сделать зависимые выпадающие списки в Excel
  • 15 Как сделать зависимые выпадающие списки?
  • 16 Способ 1 — горячие клавиши и раскрывающийся список в excel
  • 17 Способ 2 — самый удобный, простой и наиболее гибкий
  • 18 Способ 3 — как в excel сделать выпадающий список с использованием ActiveX

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Вот и все:

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

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

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

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

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

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

Видео-урок

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

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

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

  • Выбрать ячейку, в которой мы хотим создать выпадающий список;
  • Перейти на вкладку “Данные” => раздел “Работа с данными” на панели инструментов => выбираем пункт “Проверка данных“.
  • Во всплывающем окне “Проверка вводимых значений” на вкладке “Параметры” в типе данных выбрать “Список“:
  • В поле “Источник” ввести диапазон названий фруктов =$A$2:$A$6 или просто поставить курсор мыши в поле ввода значений “Источник” и затем мышкой выбрать диапазон данных:

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

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

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

Например, представим что в выпадающем меню мы хотим отразить два слова “Да” и “Нет”. Для этого нам потребуется:

  • Выбрать ячейку, в которой мы хотим создать выпадающий список;
  • Перейти на вкладку “Данные” => раздел “Работа с данными” на панели инструментов => выбрать пункт “Проверка данных“:
  • Во всплывающем окне “Проверка вводимых значений” на вкладке “Параметры” в типе данных выбрать “Список“:
  • В поле “Источник” ввести значение “Да; Нет”.
  • Нажимаем “ОК

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

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

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

Как создать раскрывающийся список в Эксель с помощью функции СМЕЩ

Наряду со способами описанными выше, вы также можете использовать формулу СМЕЩ для создания выпадающих списков.

Например, у нас есть список с перечнем фруктов:

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

  • Выбрать ячейку, в которой мы хотим создать выпадающий список;
  • Перейти на вкладку “Данные” => раздел “Работа с данными” на панели инструментов => выбрать пункт “Проверка данных“:
  • Во всплывающем окне “Проверка вводимых значений” на вкладке “Параметры” в типе данных выбрать “Список“:
  • В поле “Источник” ввести формулу: =СМЕЩ(A$2$;0;0;5)
  • Нажать “ОК

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

Как эта формула работает?

На примере выше мы использовали формулу =СМЕЩ(ссылка;смещ_по_строкам;смещ_по_столбцам;;).

Эта функция содержит в себе пять аргументов. В аргументе “ссылка” (в примере $A$2) указывается с какой ячейки начинать смещение. В аргументах “смещ_по_строкам” и “смещ_по_столбцам” (в примере указано значение “0”) – на какое количество строк/столбцов нужно смещаться для отображения данных. В аргументе “” указано значение “5”, которое обозначает высоту диапазона ячеек. Аргумент “” мы не указываем, так как в нашем примере диапазон состоит из одной колонки.

Используя эту формулу, система возвращает вам в качестве данных для выпадающего списка диапазон ячеек, начинающийся с ячейки $A$2, состоящий из 5 ячеек.

Как сделать выпадающий список в Excel с подстановкой данных (с использованием функции СМЕЩ)

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

Для создания списка потребуется:

  • Выбрать ячейку, в которой мы хотим создать выпадающий список;
  • Перейти на вкладку “Данные” => раздел “Работа с данными” на панели инструментов => выбрать пункт “Проверка данных“;
  • Во всплывающем окне “Проверка вводимых значений” на вкладке “Параметры” в типе данных выбрать “Список“;
  • В поле “Источник” ввести формулу: =СМЕЩ(A$2$;0;0;СЧЕТЕСЛИ($A$2:$A$100;””))
  • Нажать “ОК

В этой формуле, в аргументе “” мы указываем в качестве аргумента, обозначающего высоту списка с данными –  формулу СЧЕТЕСЛИ, которая рассчитывает в заданном диапазоне A2:A100 количество не пустых ячеек.

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

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

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

  • Создаем список данных для отображения в выпадающем списке. В нашем случае это список цветов. Выделяем перечень левой кнопкой мыши:
  • На панели инструментов нажимаем пункт “Форматировать как таблицу“:
  • Из раскрывающегося меню выбираем стиль оформления таблицы:
  •  Нажав клавишу “ОК” во всплывающем окне, подтверждаем выбранный диапазон ячеек:
  • Затем, выделим диапазон данных таблицы для выпадающего списка и присвоим ему имя в левом поле над столбцом “А”:

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

  • Выбрать ячейку, в которой мы хотим создать список;
  • Перейти на вкладку “Данные” => раздел “Работа с данными” на панели инструментов => выбрать пункт “Проверка данных“:
  • Во всплывающем окне “Проверка вводимых значений” на вкладке “Параметры” в типе данных выбрать “Список“:
  • В поле источник указываем =”название вашей таблицы”. В нашем случае мы ее назвали “Список“:
  • Готово! Выпадающий список создан, в нем отображаются все данные из указанной таблицы:
  • Для того чтобы добавить новое значение в выпадающий список – просто добавьте в следующую после таблицы с данными ячейку информацию:
  • Таблица автоматически расширит свой диапазон данных. Выпадающий список соответственно пополнится новым значением из таблицы:

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

В Excel есть возможность копировать созданные выпадающие списки. Например, в ячейке А1 у нас есть выпадающий список, который мы хотим скопировать в диапазон ячеек А2:А6.

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

  • нажмите левой клавишей мыши на ячейку с выпадающим списком, которую вы хотите скопировать;
  • нажмите сочетание клавиш на клавиатуре CTRL+C;
  • выделите ячейки в диапазоне А2:А6, в которые вы хотите вставить выпадающий список;
  • нажмите сочетание клавиш на клавиатуре CTRL+V.

Так, вы скопируете выпадающий список, сохранив исходный формат списка (цвет, шрифт и.т.д). Если вы хотите скопировать/вставить выпадающий список без сохранения формата, то:

  • нажмите левой клавишей мыши на ячейку с выпадающим списком, который вы хотите скопировать;
  • нажмите сочетание клавиш на клавиатуре CTRL+C;
  • выберите ячейку, в которую вы хотите вставить выпадающий список;
  • нажмите правую кнопку мыши => вызовите выпадающее меню и нажмите “Специальная вставка“;
  • В появившемся окне в разделе “Вставить” выберите пункт “условия на значения“:
  • Нажмите “ОК

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

Как выделить все ячейки, содержащие выпадающий список в Экселе

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

  • Нажмите на вкладку “Главная” на Панели инструментов;
  • Нажмите “Найти и выделить” и выберите пункт “Выделить группу ячеек“:
  • В диалоговом окне выберите пункт “Проверка данных“. В этом поле есть возможность выбрать пункты “Всех” и “Этих же“. “Всех” позволит выделить все выпадающие списки на листе. Пункт “этих же” покажет выпадающие списки схожие по содержанию данных в выпадающем меню. В нашем случае мы выбираем “всех“:
  • Нажмите “ОК

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

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

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

Предположим, что у нас есть списки городов двух стран Россия и США:

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

  • Создать два именованных диапазона для ячеек “A2:A5” с именем “Россия” и для ячеек “B2:B5” с названием “США”. Для этого нам нужно выделить весь диапазон данных для выпадающих списков:
  • Перейти на вкладку “Формулы” => кликнуть в разделе “Определенные имена” на пункт “Создать из выделенного“:
  • Во всплывающем окне “Создание имен из выделенного диапазона” поставьте галочку в пункт “в строке выше“. Сделав это, Excel создаст два именованных диапазона “Россия” и “США” со списками городов:
  • Нажмите “ОК
  • В ячейке “D2” создайте выпадающий список для выбора стран “Россия” или “США”. Так, мы создадим первый выпадающий список, в котором пользователь сможет выбрать одну из двух стран.

Теперь, для создания зависимого выпадающего списка:

  • Выделите ячейку E2 (или любую другую ячейку, в которой вы хотите сделать зависимый выпадающий список);
  • Кликните по вкладке “Данные” => “Проверка данных”;
  • Во всплывающем окне “Проверка вводимых значений” на вкладке “Параметры” в типе данных выберите “Список“:
  • В разделе “Источник” укажите ссылку: =INDIRECT($D$2) или =ДВССЫЛ($D$2);
  • Нажмите “ОК

Теперь, если вы выберите в первом выпадающем списке страну “Россия”, то во втором выпадающем списке появятся только те города, которые относятся к этой стране. Также и в случае, когда выбираете “США” из первого выпадающего списка.

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

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

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

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

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

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

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

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

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

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

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

Удачи вам и до скорой встречи на страницах блога Tutorexcel.ru!

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

Способ 1 — горячие клавиши и раскрывающийся список в excel

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

Этот же пункт меню можно запустить сочетанием клавиш Alt+»Стрелка вниз» и программа автоматически предложит в выпадающем списке значения ячеек, которые вы ранее заполняли данными. На изображении ниже программа предложила 4 варианта заполнения (дублирующиеся данные Excel не показывает). Единственное условие работы данного инструмента — это между ячейкой, в которую вы вводите данные из списка и самим списком не должно быть пустых ячеек.

Использование горячих клавиш для раскрытия выпадающего списка данных

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

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

Способ 2 — самый удобный, простой и наиболее гибкий

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

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

    Создание набора данных для списка

  2. В окне «Создание имени» задайте имя для вашего списка (это имя дальше будет использоваться в формуле подстановки). Имя должно быть без пробелов и начинаться с буквы.

    Введите имя для набора данных

  3. Выделите ячейки (можно сразу несколько ячеек), в которых планируется создать выпадающий список. Во вкладке «ДАННЫЕ» вверху документа нажмите на «Проверка данных».

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

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

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

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

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

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

Способ 3 — как в excel сделать выпадающий список с использованием ActiveX

Чтобы воспользоваться этим способом, необходимо чтобы у вас была включена вкладка «РАЗРАБОТЧИК». По умолчанию эта вкладка отсутствует. Чтобы ее включить:

  1. Нажмите на «Файл» в левом верхнем углу приложения.
  2. Выберите пункт «Параметры» и нажмите на него.
  3. В окне настройки параметров Excel во вкладке «Настроить ленту» поставьте галочку напротив вкладки «Разработчик».

Включение вкладки «РАЗРАБОТЧИК»

Теперь вы сможете воспользоваться инструментом «Поле со списком (Элемент ActiveX)». Во вкладке «РАЗРАБОТЧИК» нажмите на кнопку «Вставить» и найдите в элементах ActiveX кнопку «Поле со списком (Элемент ActiveX)». Нажмите на нее.

Нарисуйте данный объект в excel выпадающий список в ячейке, где вам необходим выпадающий список.

Теперь необходимо настроить данный элемент. Чтобы это сделать, необходимо включить «Режим конструктора» и нажать на кнопку «Свойства». У вас должно открыться окно свойств (Properties).

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

Но нас на этапе создания интересуют только три основных:

  1. ListFillRange — указывает диапазон ячеек, из которых будут браться значения для выпадающего списка. В моем примере я указал два столбца (A2:B7 — дальше покажу как это использовать). Если необходимо только одни значения указывается A2:A7.
  2. ListRows — количество данных в выпадающем списке. Элемент ActiveX отличается от первого способа тем, что можно указать большое количество данных.
  3. ColumnCount — указывает сколько столбцов данных указывать в выпадающем списке.

В строке ColumnCount я указал значение 2 и теперь в списке выпадающие данные выглядят вот так:

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

Создание списка по заданному условию

AlekseyM

Дата: Четверг, 04.08.2016, 10:50 |
Сообщение № 1

Группа: Пользователи

Ранг: Новичок

Сообщений: 18


Репутация:

0

±

Замечаний:
0% ±


Excel 2010

Добрый день.
Имеется таблица ФИО-Группа. Нужно составить свод по группам, т.е. отобрать в отдельный столбец ФИО, относящиеся к определенной группе (столбец B и C).
Подскажите, пожалуйста, как это можно сделать.

Спасибо.

 

Ответить

китин

Дата: Четверг, 04.08.2016, 10:54 |
Сообщение № 2

Группа: Модераторы

Ранг: Экселист

Сообщений: 6973


Репутация:

1063

±

Замечаний:
0% ±


Excel 2007;2010;2016

так надо ? формула массива

Код

=ЕСЛИОШИБКА(ИНДЕКС($F$3:$F$7;НАИМЕНЬШИЙ(ЕСЛИ($G$3:$G$7=B$2;СТРОКА($F$3:$F$7)-2);СТРОКА(A1)));»»)


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852

 

Ответить

Pelena

Дата: Четверг, 04.08.2016, 10:55 |
Сообщение № 3

Группа: Админы

Ранг: Местный житель

Сообщений: 18797


Репутация:

4284

±

Замечаний:
±


Excel 2016 & Mac Excel

Немного в другом виде с помощью сводной

К сообщению приложен файл:

0653354.xlsx
(12.8 Kb)


«Черт возьми, Холмс! Но как??!!»
Ю-money 41001765434816

 

Ответить

AlekseyM

Дата: Четверг, 04.08.2016, 11:44 |
Сообщение № 4

Группа: Пользователи

Ранг: Новичок

Сообщений: 18


Репутация:

0

±

Замечаний:
0% ±


Excel 2010

Спасибо большое!!!

 

Ответить

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

Очень удобный инструмент 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.

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

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

Skip to content

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

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

Вот примеры таких задач:

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

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

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

  1. 1. Именованные диапазоны + функция ДВССЫЛ.
    • А как быть с пробелами?
  2. 2. Комбинация СМЕЩ + ПОИСКПОЗ

Начнем с более простого и стандартного подхода.

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

Это может показаться сложным, но на самом деле это очень просто, и является отличным примером того, как можно применить ДВССЫЛ.

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

Рассмотрим небольшой пример. У нас есть перечень автомобилей различных марок. Расположим их каждый в отдельном столбце. В первой ячейке каждого столбца запишем производителя — Toyota, Ford, Nissan. Необходимо, чтобы после того, как первоначально мы выберем, например, Toyota, далее мы видели бы только модели этой марки, и ничего более. То есть, нам нужен двухуровневый связанный список.

Для начала создадим именованные диапазоны с моделями автомашин. Имя каждому из них присвоим в соответствии с маркой авто. Важно, чтобы имя каждого из них точно соответствовало значению, записанному в первой строке соответствующего столбца. Иными словами, если мы создаем именованный диапазон из ячеек A2:A100, то имя его должно совпадать со значением в A1 (регистр символов значения не имеет). Посмотрите на рисунке, как это выглядит.

Итак, у нас получилось 3 именованных диапазона — «toyota», «ford», «nissan». Делать их статическими (фиксированными) или динамически (автоматически пополняемыми) — решайте сами. О том, как создать автоматически пополняемый список, смотрите ссылку в конце этой статьи.

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

И далее выбираем того производителя, который нас интересует. К примеру, «Ford».

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

В этом нам поможет функция ДВССЫЛ. Функция ДВССЫЛ (INDIRECT в английском варианте) преобразует текст в стандартную ссылку Excel.

Если мы запишем

=ДВССЫЛ(«F3»)

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

=F3

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

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

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

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

Итак, в этом примере мы берем текстовые значения из А1:С1, выбираем из них какое-то одно. К примеру, «Ford». Поскольку такое же название у нас имеет один из именованных диапазонов, то и применяем ДВССЫЛ, чтобы преобразовать текст «Ford» в ссылку =ford. И вот уже ее мы употребляем как источник для связанного выпадающего списка.

Итак, в качестве источника значений применяем формулу

=ДВССЫЛ($F$3)

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

В результате функция возвращает в нашу таблицу Excel ссылку

=ford

Регистр символов в данном случае значения не имеет — все автоматически преобразуется в нижний регистр. И именно это и будет источником данных.

Изменяя значения в F3, мы автоматически изменяем и ссылку-источник для списка в F6. В результате источник данных для зависимого выпадающего списка в F6 динамически меняется в зависимости от того, что было выбрано в F3. Если выбираем Ford, то видим только каталог машин этой марки. Аналогично, если выбираем Toyota либо Nissan.

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

А как быть с пробелами?

Может случиться так, что название вашей группы товаров или категории будет содержать пробелы. А именованные диапазоны не позволяют, чтобы в их названии встречался пробел. Принято заменять их символом нижнего подчеркивания «_». Как же нам быть в этом случае? Ведь в таблице названия товарных категорий с символом нижнего подчеркивания будут смотреться несколько непривычно. Например, «Косметические_товары». С непривычки можно и просто забыть ввести нужный символ. И тогда наши формулы работать не будут.

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

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

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

То есть, мы проведем предварительную обработку значений, чтобы они соответствовали правилам написания имён. Вместо =ДВССЫЛ($F$3) запишем

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

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

=ДВССЫЛ(ПОДСТАВИТЬ(СЖПРОБЕЛЫ($F$3);» «;»_»))

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

2. Комбинация СМЕЩ + ПОИСКПОЗ

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

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

Первое условие — исходные данные должны быть отсортированы по маркам, а внутри марок — по моделям. То есть, нужно отсортировать по столбцу А, а затем — по В.

Начнем с простого. В ячейке D1 создадим выпадающий список из марок автомобилей. Для этого в F1:F3 запишем их названия и затем употребим их в качестве источника. Напомню, что нужно нажать Меню — Данные — Проверка данных.

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

Далее нам нужно в D2 создать второй уровень, где будут только модели выбранной марки. В этот раз источник данных мы определим несколько иначе, чем ранее. Воспользуемся тем, что функция СМЕЩ может возвращать массив данных, который мы как раз и можем употребить в качестве наполнения нашего второго перечня. Но для этого ей нужно передать целых 5 параметров:

  • координаты верхней левой ячейки,
  • на сколько строк нужно сместиться вниз — A,
  • на сколько столбцов нужно перейти вправо — B,
  • высота массива (строк) — C,
  • ширина массива (столбцов) D.

как работает функция СМЕЩ

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

Традиционно точкой отсчета для функции СМЕЩ возьмем ячейку A1. Теперь нам нужно решить, на сколько позиций вниз и вправо нужно перейти, чтобы указать левый верхний угол нового перечня с моделями. Предположим, первоначально мы выбрали Ford.

На сколько шагов сместиться вниз? Применим функцию ПОИСКПОЗ, которая возвратит нам номер позиции первого вхождения «Ford».

=ПОИСКПОЗ($D$1;$A$1:$A$22;0)

Если первый раз нужное нам слово встретилось, к примеру, в 7-й позиции, то вычтем 1, чтобы получить количество шагов. То есть, начиная с первого значения, нужно сделать 6 шагов.

Третий параметр установим равным 1, так как нужно перейти на один шаг вправо из A в B. Мы находимся в начальной точке нашего диапазона. Теперь рассчитаем, на сколько ячеек вниз он будет продолжаться. Для этого подсчитаем, сколько раз «Ford» встречается в нашем перечне. Столько и будет значений вниз.

=СЧЁТЕСЛИ($A$1:$A$22;$D$1)

А теперь объединяем все это в СМЕЩ:

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

Последняя единичка означает, что массив состоит из одной колонки.

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

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

Еще полезная дополнительная информация:

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