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

Динамические выпадающие списки excel

Правильное введение данных

Алгоритм, как сделать выпадающий список в «Excel» рассмотрели, но следует обратить внимание на ряд дополнительных моментов, корректного внесения информации:

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

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

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

Если у Вас остались вопросы по теме «Что такое выпадающий список в Excel и как его создать?», то можете задать их в комментария

Что такое выпадающий список и для чего он нужен?

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

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

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

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

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

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

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

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

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

Именуя диапазон значений, важно использовать вместо пробела нижнее подчеркивание «_». Например, «Мясные_блюда»

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

=ПОДСТАВИТЬ(F3;» «;»_») без кавычек.

Итоговая формула выглядит так:

=ДВССЫЛ(ПОДСТАВИТЬ($F$3;» «;»_»)) без кавычек.

Стоит обратить внимание на отсутствие пробелов в названии в начале и в конце, чтобы избежать некорректного вывода заголовков. Автоматизировать данный процесс при построении имени также можно посредством функции:. =ДВССЫЛ(ПОДСТАВИТЬ(СЖПРОБЕЛЫ($F$3);» «;»_»)) без кавычек

=ДВССЫЛ(ПОДСТАВИТЬ(СЖПРОБЕЛЫ($F$3);» «;»_»)) без кавычек.

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

Задача: Создать выпадающий список в Excel таким образом, чтобы в него автоматически попадали все новые значения. Сделаем это при помощи формул, чтобы этот способ можно было использовать не только в Excel 2007 и старше, но и в Excel 2003.

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

Попробуем при помощи функции СМЕЩ (OFFSET) имитировать работу «умной» таблицы Excel. Это нам может быть полезно также в тех случаях, когда приходится использовать старые версии Excel до 2007 года.

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

=СМЕЩ(A2,0,0,СЧЁТЗ(A2:A200),1)

Давайте разберемся, как она работает.

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

А2 — это начальная ячейка, по отношению к которой будет выделен наш диапазон. Он всегда задается двумя координатами — левой верхней и правой нижней. Подразумевается, что начало диапазона (левый верхний его угол) будет находиться или в начальной ячейке, или чуть ниже и правее нее. На нашем рисунке это зелёная область. Параметр А показывает, на сколько ячеек вниз нам нужно опуститься. Параметр В — на сколько сдвинуться вправо. Если, как в нашем случае, они оба равны нулю, значит в нашей начальной ячейке и будет находиться левая верхняя точка.

И теперь нужно определить правую нижнюю точку. Теперь уже от начальной точки диапазона делаем С шагов вниз и D шагов вправо. В нашем примере D=1. То есть нам нужен только один столбец. Осталось только определиться, сколько шагов вниз нужно сделать, сколько строк взять в наш список. Нам нужна последняя заполненная строка в столбце А. Точнее, не сама строка, а ее порядковый номер.

Здесь нам поможет вторая функция — СЧЕТЗ (COUNTA). Она подсчитывает количество значений в заданном нами диапазоне A2:A200. Можно взять и более удаленные координаты, но думается, что 200 значений в списке будет вполне достаточно. Естественно, вместо ссылки можно использовать именованный диапазон.

В нашем примере мы имеем 8 значений. Значит, возьмем 8 строк, начиная с А2. То есть, A2:A9.

Если в ячейке А10 появится новое значение, тогда значений станет уже 9. Соответственно диапазон автоматически расширится до A2:A10. И так далее.

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

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

А вот еще о работе с выпадающими списками в Excel:

Рейтинг статьи

B. Ввод элементов списка в диапазон (на любом листе)

В правилах Проверки данных (также как и Условного форматирования) нельзя впрямую указать ссылку на диапазоны другого листа (см. Файл примера ):

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

а диапазон с перечнем элементов разместим на другом листе (на листе Список в файле примера ).

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

Используем именованный диапазон Создадим Именованный диапазон Список_элементов, содержащий перечень элементов выпадающего списка (ячейки A1:A4 на листе Список). Для этого:

  • выделяем А1:А4,
  • нажимаем Формулы/ Определенные имена/ Присвоить имя
  • в поле Имя вводим Список_элементов, в поле Область выбираем Книга;

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

  • вызываем Проверку данных;
  • в поле Источник вводим ссылку на созданное имя: =Список_элементов .

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

Избавиться от пустых строк и учесть новые элементы перечня позволяет Динамический диапазон. Для этого при создании Имени Список_элементов в поле Диапазон необходимо записать формулу = СМЕЩ(Список!$A$1;;;СЧЁТЗ(Список!$A:$A))

Использование функции СЧЁТЗ() предполагает, что заполнение диапазона ячеек (A:A), который содержит элементы, ведется без пропусков строк (см. файл примера , лист Динамический диапазон).

Используем функцию ДВССЫЛ()

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

Недостаток: при переименовании листа – формула перестает работать. Как это можно частично обойти см. в статье Определяем имя листа.

Ввод элементов списка в диапазон ячеек, находящегося в другой книге

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

  • в книге Источник.xlsx создайте необходимый перечень элементов;
  • в книге Источник.xlsx диапазону ячеек содержащему перечень элементов присвойте Имя, например СписокВнеш;
  • откройте книгу, в которой предполагается разместить ячейки с выпадающим списком;
  • выделите нужный диапазон ячеек, вызовите инструмент Проверка данных, в поле Источник укажите = ДВССЫЛ(«лист1!СписокВнеш») ;

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

Если нет желания присваивать имя диапазону в файле Источник.xlsx, то формулу нужно изменить на = ДВССЫЛ(«лист1!$A$1:$A$4»)

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

Примечание : Если выпадающий список содержит более 25-30 значений, то работать с ним становится неудобно. Выпадающий список одновременно отображает только 8 элементов, а чтобы увидеть остальные, нужно пользоваться полосой прокрутки, что не всегда удобно.

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

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

Как сделать выпадающий список в Excel? Пошаговая инструкция

Разработчиками ПО предусмотрено несколько методов, как создать выпадающий список в «excel». Далее рассмотрим все доступные способы:

Метод №1 – самый простой

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

Вариант – 1 переходим в поле под перечнем значений, открываем контекстное меню, и в открывшемся окне выбираем функцию: «Выбрать из раскрывающегося списка»;

Вариант – 2 переходим в поле под заполненным списком, и нажимаем сочетание клавиш:  Alt+V.

Метод №2 – стандартный алгоритм

Теперь рассмотрим метод с расширенным функционалом, для создания, в «excel» выпадающего списка в ячейке.

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

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

Способ – 2: выделив диапазон рабочих сегментов, переходим в раздел Формулы-Диспетчер имен-Создать, и в графе «источник» прописываем уникальное наименование для будущего реестра значений.

№2-2.

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

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

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

Важно – перед именем, необходимо вставить знак равенства «=»

Таким образом мы рассмотрели еще 1 метод, как сделать выпадающий список в ячейке «Excel».

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

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

Наш приглашенный блоггер Дебра Далглиш — консультант, специализирующийся на программировании и разработке Microsoft Office.Каждую неделю она делится своими знаниями об Excel в блоге Contextures и ежегодно получает награду Excel MVP с 2001 года.

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

Перед волшебством

Чтобы отслеживать, кто будет оставаться в офисе каждую неделю, Ди, менеджер офиса, создал файл Excel.Этот файл содержит список имен сотрудников и список недель. Ди создал раскрывающийся список имен сотрудников на каждую неделю.

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

Добавьте волшебство

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

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

За занавеской

Чтобы увидеть код для рабочего листа, щелкните правой кнопкой мыши вкладку листа и выберите Просмотреть код . Это откроет Visual Basic Explorer (VBE).

В списке проектов слева указана рабочая книга FridayStaffName, а лист Friday_Staff выделен. Справа мы видим код события Worksheet_Change для этого рабочего листа.Этот код запускается автоматически, если Ди вносит изменения в лист.

Скопируйте код в свой файл

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

В коде Target относится к ячейке, которую вы изменили. На снимке экрана ниже код проверяет, в каком столбце находится эта целевая ячейка.Затем, если это был столбец 2 (B), остальная часть кода будет выполнена.

Вместо использования столбца 2 вы можете изменить его число или использовать несколько столбцов, например: Case 2, 5, 6

Пусть волшебство работает на вас

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

Вы можете загрузить образец файла, чтобы увидеть, как он работает, а также добавить этот удивительный трюк в свои рабочие книги: Загрузите файл образца имен сотрудников Friday

* Mystical Magic Factory — вымышленная компания, но эта тема блога основана на реальной проблеме клиента Contextures.

Дополнительная информация в раскрывающихся списках Excel:

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

Вариант 1: Группировка существующего списка

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

Обратите внимание на следующий скриншот. Это простой пример списка продуктов

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

Перейдите на вкладку «‎Данные» и выберите инструмент «‎Проверка данных».

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

В качестве источника задайте те самые ячейки, выделив их левой кнопкой мыши. Нажмите «‎ОК» для применения настроек.

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

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

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться

Понравилась статья? Поделиться с друзьями:
Самоучитель Брин Гвелл
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: