Под выпадающим списком понимается содержание в одной ячейке нескольких значений. Когда пользователь щелкает по стрелочке справа, появляется определенный перечень. Можно выбрать конкретное.
Очень удобный инструмент Excel для проверки введенных данных. Повысить комфорт работы с данными позволяют возможности выпадающих списков: подстановка данных, отображение данных другого листа или файла, наличие функции поиска и зависимости.
Создание раскрывающегося списка
Путь: меню «Данные» — инструмент «Проверка данных» — вкладка «Параметры». Тип данных – «Список».
Ввести значения, из которых будет складываться выпадающий список, можно разными способами:
- Вручную через «точку-с-запятой» в поле «Источник».
- Ввести значения заранее. А в качестве источника указать диапазон ячеек со списком.
- Назначить имя для диапазона значений и в поле источник вписать это имя.
Любой из вариантов даст такой результат.
Выпадающий список в Excel с подстановкой данных
Необходимо сделать раскрывающийся список со значениями из динамического диапазона. Если вносятся изменения в имеющийся диапазон (добавляются или удаляются данные), они автоматически отражаются в раскрывающемся списке.
- Выделяем диапазон для выпадающего списка. В главном меню находим инструмент «Форматировать как таблицу».
- Откроются стили. Выбираем любой. Для решения нашей задачи дизайн не имеет значения. Наличие заголовка (шапки) важно. В нашем примере это ячейка А1 со словом «Деревья». То есть нужно выбрать стиль таблицы со строкой заголовка. Получаем следующий вид диапазона:
- Ставим курсор в ячейку, где будет находиться выпадающий список. Открываем параметры инструмента «Проверка данных» (выше описан путь). В поле «Источник» прописываем такую функцию:
Протестируем. Вот наша таблица со списком на одном листе:
Добавим в таблицу новое значение «елка».
Теперь удалим значение «береза».
Осуществить задуманное нам помогла «умная таблица», которая легка «расширяется», меняется.
Теперь сделаем так, чтобы можно было вводить новые значения прямо в ячейку с этим списком. И данные автоматически добавлялись в диапазон.
- Сформируем именованный диапазон. Путь: «Формулы» — «Диспетчер имен» — «Создать». Вводим уникальное название диапазона – ОК.
- Создаем раскрывающийся список в любой ячейке. Как это сделать, уже известно. Источник – имя диапазона: =деревья.
- Снимаем галочки на вкладках «Сообщение для ввода», «Сообщение об ошибке». Если этого не сделать, Excel не позволит нам вводить новые значения.
- Вызываем редактор Visual Basic. Для этого щелкаем правой кнопкой мыши по названию листа и переходим по вкладке «Исходный текст». Либо одновременно нажимаем клавиши Alt + F11. Копируем код (только вставьте свои параметры).
- Сохраняем, установив тип файла «с поддержкой макросов».
- Переходим на лист со списком. Вкладка «Разработчик» — «Код» — «Макросы». Сочетание клавиш для быстрого вызова – Alt + F8. Выбираем нужное имя. Нажимаем «Выполнить».
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
Когда мы введем в пустую ячейку выпадающего списка новое наименование, появится сообщение: «Добавить введенное имя баобаб в выпадающий список?».
Нажмем «Да» и добавиться еще одна строка со значением «баобаб».
Выпадающий список в Excel с данными с другого листа/файла
Когда значения для выпадающего списка расположены на другом листе или в другой книге, стандартный способ не работает. Решить задачу можно с помощью функции ДВССЫЛ: она сформирует правильную ссылку на внешний источник информации.
- Делаем активной ячейку, куда хотим поместить раскрывающийся список.
- Открываем параметры проверки данных. В поле «Источник» вводим формулу: =ДВССЫЛ(“[Список1.xlsx]Лист1!$A$1:$A$9”).
Имя файла, из которого берется информация для списка, заключено в квадратные скобки. Этот файл должен быть открыт. Если книга с нужными значениями находится в другой папке, нужно указывать путь полностью.
Как сделать зависимые выпадающие списки
Возьмем три именованных диапазона:
Это обязательное условие. Выше описано, как сделать обычный список именованным диапазоном (с помощью «Диспетчера имен»). Помним, что имя не может содержать пробелов и знаков препинания.
- Создадим первый выпадающий список, куда войдут названия диапазонов.
- Когда поставили курсор в поле «Источник», переходим на лист и выделяем попеременно нужные ячейки.
- Теперь создадим второй раскрывающийся список. В нем должны отражаться те слова, которые соответствуют выбранному в первом списке названию. Если «Деревья», то «граб», «дуб» и т.д. Вводим в поле «Источник» функцию вида =ДВССЫЛ(E3). E3 – ячейка с именем первого диапазона.
- Создаем стандартный список с помощью инструмента «Проверка данных». Добавляем в исходный код листа готовый макрос. Как это делать, описано выше. С его помощью справа от выпадающего списка будут добавляться выбранные значения.
- Чтобы выбранные значения показывались снизу, вставляем другой код обработчика.
- Чтобы выбираемые значения отображались в одной ячейке, разделенные любым знаком препинания, применим такой модуль.
- На вкладке «Разработчик» находим инструмент «Вставить» – «ActiveX». Здесь нам нужна кнопка «Поле со списком» (ориентируемся на всплывающие подсказки).
- Щелкаем по значку – становится активным «Режим конструктора». Рисуем курсором (он становится «крестиком») небольшой прямоугольник – место будущего списка.
- Жмем «Свойства» – открывается перечень настроек.
- Вписываем диапазон в строку ListFillRange (руками). Ячейку, куда будет выводиться выбранное значение – в строку LinkedCell. Для изменения шрифта и размера – Font.
Выбор нескольких значений из выпадающего списка Excel
Бывает, когда из раскрывающегося списка необходимо выбрать сразу несколько элементов. Рассмотрим пути реализации задачи.
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
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
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
Не забываем менять диапазоны на «свои». Списки создаем классическим способом. А всю остальную работу будут делать макросы.
Выпадающий список с поиском
Скачать пример выпадающего списка
При вводе первых букв с клавиатуры высвечиваются подходящие элементы. И это далеко не все приятные моменты данного инструмента. Здесь можно настраивать визуальное представление информации, указывать в качестве источника сразу два столбца.
Выпадающий список в MS EXCEL на основе Проверки данных
Смотрите такжеPrivate Sub Worksheet_Change(ByVal А) с пробелами, то диапазону имя (то есть количество таблице). категорий продуктов, второйFood=СМЕЩ(города!$A$2;;Позиция_страны;СЧЁТЗ(Выбранная_Страна)) (его нужно предварительно используя рассмотренный здесьУстановите курсор в той Второй метод реализации такие инструменты, которые диапазон ячеек, находящегося список только что
При заполнении ячеек данными, Target As Range)сдвиг_вправо = 1, т.к.
придется их заменятьToyota элементов в списке).Для того чтобы назвать — список всехA1:A3
Эти формулы нужны для создать через Диспетчер подход, очень проблематично. ячейке, где будет может стать достойной далеко выходят за в другой книге
был создан). Чтобы часто необходимо ограничить
А. Простейший выпадающий список — ввод элементов списка непосредственно в поле Источник
On Error Resume мы хотим сослаться на подчеркивания с. В Excel 2003Начало диапазона будет перемещено список категорий:
продуктов, находящихся вPizza того, чтобы в имен). Именованный диапазон Для тех, кому располагаться второй список. альтернативой. рамки основной целиЕсли необходимо перенести диапазон
пустые строки исчезли возможность ввода определенным Next If Not на модели в помощью функции и старше -
относительно ячейки H2Выберите диапазон A3:A5. выбранной категории. ПоэтомуВ1:В4 выпадающих списках не Диап_Стран образуем формулой: требуется создать структуруОткройте окно «Проверки вводимыхКак создать выпадающий список
использования программы – с элементами выпадающего необходимо сохранить файл. списком значений. Например, Intersect(Target, Range(«C2:C5»)) Is соседнем столбце (В)ПОДСТАВИТЬ (SUBSTITUTE) это можно сделать на такое количествоВ поле имени (поле я создал выпадающийPancakes
отображались пустые строки.=СМЕЩ(страны!$B$2;;;90;СЧЁТЕСЛИ(страны!$B$1:$Z$1;»?*»))
Б. Ввод элементов списка в диапазон (на том же листе, что и выпадающий список)
с 4-мя и значений», нажав на в ячейке листа редактирования таблиц. В списка в другуюВторой недостаток: диапазон источника имеется ячейка, куда Nothing And Target.Cells.Count
размер_диапазона_в_строках — вычисляем с, т.е. формула будет в меню ячеек вниз (по слева от строки список, зависимый от
С1:С2Наконец сформируем связанныйДля формирования списка Стран более уровнями, см. вкладке «Данные» по при помощи меню
этой статье будет книгу (например, в должен располагаться на пользователь должен внести = 1 Then помощью функции выглядеть как =ДВССЫЛ(ПОДСТАВИТЬ(F3;»Вставка — Имя - числу), сколько составляет формулы) введите название выбора, сделанного вChinese выпадающий список для нам также понадобится статью Многоуровневый связанный список кнопке «Проверка данных». «Разработчика»? Как и рассказано об опции книгу Источник.xlsx), то
том же листе, название департамента, указав Application.EnableEvents = FalseСЧЕТЕСЛИ (COUNTIF) «;»_»)) Присвоить (Insert - номер позиции первой «Категория». предыдущем списке (здесьD1:D3 ячеек из столбца
Именованная формула Строки_Столбцы_Стран типа Предок-Родитель.В появившемся окне на в предыдущий раз, выбора из списка
B. Ввод элементов списка в диапазон (на любом листе)
нужно сделать следующее: что и выпадающий где он работает. If Len(Target.Offset(0, 1)), которая умеет подсчитатьНадо руками создавать много
Name — Define). встречающейся категории вПодтвердите с помощью клавиши вы найдете материал
Выделите ячейку Страна налисте=ЕСЛИ(ЕПУСТО(Диап_Стран);»»;Имеется перечень Регионов. Для вкладке «Параметры» выберите
для лучшего понимания в Excel. Другимив книге Источник.xlsx создайте список, т.к. для Логично, предварительно создать = 0 Then количество встретившихся в именованных диапазонов (если
В Excel 2007
столбце Категория. Проще Enter. о том, какB1Таблица
—((СТОЛБЕЦ(Диап_Стран)-1)&
- каждого Региона имеется из выпадающего списка все действия будут
- словами, расскажем, как необходимый перечень элементов;
- правил Проверки данных нельзя список департаментов организации Target.Offset(0, 1) =
списке (столбце А) у нас много и новее - будет понять на
- Такое же действие совершите
- создать два зависимыхна листе.
ВЫБОР(ДЛСТР(СТРОКА(Диап_Стран)-1);»0″;»»)&
свой перечень Стран. «Тип данных» пункт поделены на этапы. создавать выпадающие спискив книге Источник.xlsx диапазону использовать ссылки на и позволить пользователю Target Else Target.End(xlToRight).Offset(0, нужных нам значений марок автомобилей).
на вкладке примере: диапазон для для диапазона рабочего раскрывающихся списка).Sheet1выделяем диапазонСТРОКА(Диап_Стран)-1)) Для каждой Страны
«Список».Итак, в первую очередь в ячейках таблицы. ячеек содержащему перечень другие листы или лишь выбирать значения 1) = Target — марок автоЭтот способ требует наличия
Формулы (Formulas)
категории Питание перемещен списка категорий G3:G15,Тот же самый результат.B5:B22Окончательная формула в столбце имеется свой переченьВ поле для ввода необходимо активировать менюЕсли вы хотите сделать элементов присвойте Имя,
книги (это справедливо из этого списка. End If Target.ClearContents (G7) отсортированного списка соответствийс помощью на 4 ячейки
который вы можете хочет получить пользовательНа вкладке
налистеА Городов. «Источник» введите формулу «Разработчика», так как в ячейке Excel
- например СписокВнеш; для EXCEL 2007
- Этот подход поможет Application.EnableEvents = Trueразмер_диапазона_в_столбцах = 1, т.к. марка-модель вот такого
- Диспетчера имен (Name Manager) вниз относительно ячейки вызвать «Рабочий_Список». Этот
- шаблона домашнего бюджетаDataТаблицана листе
Пользователь должен иметь возможность, «ДВССЫЛ», ссылающуюся на по умолчанию его список выбора, тооткройте книгу, в которой и более ранних). ускорить процесс ввода End If End нам нужен один вида:. Затем повторим то H2 (начинается с диапазон мы будем где нужна категория
(Данные) нажмите кнопку;Города выбрав определенный Регион, первый список. В
нет среди прочих
проще всего воспользоваться предполагается разместить ячейкиИзбавимся сначала от второго и уменьшить количество Sub столбец с моделямиДля создания первичного выпадающего же самое со 4 ячейки от использовать в формуле. и подкатегория расходов.Data Validationвызываем инструмент Проверка данных,выглядит так: в соседней ячейке данном случае она вкладок. этим способом, подразумевающим с выпадающим списком; недостатка – разместим опечаток.При необходимости, замените воВ итоге должно получиться списка можно марок списками Форд и H2). В 4-ой
Это будет просто: Пример данных находится
(Проверка данных).устанавливаем тип данных Список,=ЕСЛИОШИБКА(ИНДЕКС(Диап_Стран; выбрать из Выпадающего будет выглядеть следующимНажмите по кнопке «Файл». простое создание выпадающеговыделите нужный диапазон ячеек, перечень элементов выпадающегоВыпадающий список можно создать второй строке этого
что-то вроде этого: можно воспользоваться обычным Ниссан, задав соответственно ячейке столбца ПодкатегорияВыберите ячейку, в которую на рисунке ниже:Откроется диалоговое окнов поле Источник вводим:—ПРАВСИМВ(НАИМЕНЬШИЙ(Строки_Столбцы_Стран;СТРОКА(Z1));2); (раскрывающегося) списка нужную образом: «=ДВССЫЛ($B3)».
Нажмите по кнопке «Параметры». списка. Кстати, будет вызовите инструмент Проверка списка на другом с помощью Проверки кода чувствительный диапазонОсталось добавить выпадающий список способом, описанным выше, имена диапазонам (не включая заголовок, вы хотите поместитьТак, например, если мыData Validation =Страны.—ЛЕВСИМВ(НАИМЕНЬШИЙ(Строки_Столбцы_Стран;СТРОКА(Z1)); ему Страну изНажмите «ОК».В появившемся одноименном окне
excel2.ru
Excel: выбор из списка. Выпадающий список в ячейке листа
рассказано о двух данных, в поле листе. данных выпадающих списков С2:С5 на основе созданной т.е.Ford так как речь список. В моем выберем категорию Развлечения,(Проверка вводимых значений).Также создадим связанный выпадающийДЛСТР(НАИМЕНЬШИЙ(Строки_Столбцы_Стран;СТРОКА(Z1)))-2));»») этого Региона. ВВторой список создан. Он перейдите в раздел
Способ 1: создаем дополнительный список
его вариациях, поэтому Источник укажите =ДВССЫЛ(«[Источник.xlsx]лист1!СписокВнеш»);В правилах Проверки данных (такжеили с помощью элемента на свой. формулы к ячейкедать имя диапазону D1:D3и идет о диапазоне случае это A12. то в спискеВыберите
Шаг 1: подготавливаем данные
список для ячеексформирует необходимый нам список другой соседней ячейке привязан к первому, «Настройка ленты». прочтите до конца,При работе с перечнем как и Условного управления формы ПолеТо же самое, что G8. Для этого: (напримерNissan с именем Рабочий_Список),В меню «ДАННЫЕ» выберите подкатегорий должно быть:List
из столбца Город Стран. пользователь должен иметь что означает, что,В области «Основные вкладки» чтобы во всем элементов, расположенным в форматирования) нельзя впрямую со списком (см.
Шаг 2: вводим имя диапазона
и в предыдущемвыделяем ячейку G8Марки. есть слово Питание инструмент «Проверка данных». Кинотеатр, Театр, Бассейн.
- (Список) из раскрывающегося (диапазонТеперь создадим Динамический диапазон
- возможность выбрать нужный выбрав значение в
- установите отметку напротив разобраться.
- другой книге, файл указать ссылку на статью Выпадающий (раскрывающийся) варианте, но новыевыбираем на вкладке
- ) с помощью
При задании имен помните (его первое появление). Появится окно «Проверка Очень быстрое решение, списка
Шаг 3: делаем выпадающий список
С5:С22 для формирования Выпадающего ему Город из данном случае продукта, пункта «Разработчик».
- Предварительно необходимо в отдельном Источник.xlsx должен быть диапазоны другого листа
- список на основе
- выбранные значения добавляютсяДанные (Data)Диспетчера имен (Name Manager) о том, что
- Мы используем этот вводимых значений». если в своемAllow, в поле Источник
- списка содержащего названия этой Страны (см. вам необходимо будетНажмите «ОК». диапазоне ячеек создать открыт и находиться
- (см. Файл примера):
элемента управления формы). не справа, акомандус вкладки имена диапазонов в факт собственно для
Способ 2: создание выпадающего списка через меню «Разработчика»
В качестве типа данных домашнем бюджете вы(Тип данных). вводим: =Города) Регионов. Для этого файл примера). выбрать также иНужная панель инструментов активирована, таблицу с данными, в той жеПусть ячейки, которые должны
В этой статье создадим снизу:Проверка данных (Data validation)Формулы (Formulas) Excel не должны определения начала диапазона. выберите «Список». хотите проанализировать более
Шаг 1: включаем меню «Разработчика»
Поместите курсор в полеНа листе необходимо:В окончательном виде трехуровневый его меру. Чтобы теперь можно приступать
- которые будут в
- папке, иначе необходимо
- содержать Выпадающий список, Выпадающий список сДелается совершенно аналогично, но
- или в менюили в старых содержать пробелов, знаков
- Послужит нам для
В качестве источника введите: подробную информацию.Source
Шаг 2: вставляем выпадающий список
Таблицанажать кнопку меню «Присвоить связанный список должен
- не создавать такие к созданию списка.
- будущем находиться в указывать полный путь размещены на листе помощью Проверки данных
- немного меняется кодДанные — Проверка (Data версиях Excel - препинания и начинаться
- этого функция ПОИСКПОЗ =Категория (рисунок ниже).
(Источник) и введитепосле выбора Региона имя» (Формулы/ Определенные работать так: же списки вНужно создать непосредственно сам выпадающем списке. Разберем
Шаг 3: задаем необходимые параметры
к файлу. Вообще Пример,
- (Данные/ Работа с макроса обработчика: — Validation)
- через меню обязательно с буквы. (введенная в качестве
- Подтвердите с помощью OK.Признаюсь, что в предложенном «=Food». и Страны теперь имена/ Присвоить имя);Сначала выберем, например, Регион
- других ячейках, выделите элемент «Выпадающий список». все на примере ссылок на другиеа диапазон с перечнем
данными/ Проверка данных)Private Sub Worksheet_Change(ByValиз выпадающего списка выбираемВставка — Имя - Поэтому если бы второго аргумента функцииПроверка вводимых значений – мной варианте домашнего
Способ 3: создание связанного списка
Нажмите есть возможность выборав поле Имя ввести «Америка» с помощью уже добавленные и Для этого: продуктов. Итак, мы листы лучше избегать элементов разместим на с типом данных Target As Range) вариант проверки Присвоить (Insert -
Шаг 1: создаем дополнительный список
в одной из СМЕЩ): Категория. бюджета я ограничиваюсьОК Города. Регионы; Выпадающего списка. потяните за нижнийПерейдите на добавленную вкладку имеем список из или использовать Личную другом листе (на Список. On Error Resume
Шаг 2: Связываем первый список со вторым
Список (List) Name — Define) марок автомобилей присутствовалВысоту диапазона определяет функцияРезультат следующий: только категорией, поскольку.
- Для добавления новых Регионовв поле Диапазон ввестиЗатем выберем Страну «США»
- правый угол выделения «Разработчик». семи товаров, если книгу макросов Personal.xlsx
- листе Список вВыпадающий список можно сформировать Next If Notи вводим ввыбрать на вкладке
- бы пробел (например СЧЕТЕСЛИ. Она считаетРаскрывающийся список для категории. для меня такогоРезультат: и их Стран формулу
- из Региона «Америка».
вниз, тем самымНа листе создайте список быть точнее, то или Надстройки. файле примера). по разному. Intersect(Target, Range(«C2:F2»)) Is качествеДанные (Data) Ssang Yong), то все встречающиеся повторенияСейчас будет весело. Создавать разделения расходов вполнеТеперь выделите ячейку достаточно ввести новый=страны!$A$2:ИНДЕКС(страны!$A:$A;СЧЁТЗ(страны!$A:$A))Причем перечень стран в
Заключение
заполнив все нужные товаров, который будет продуктов. Эту табличкуЕсли нет желания присваиватьДля создания выпадающего списка,Самым простым способом создания Nothing And Target.Cells.CountИсточника (Source)команду его пришлось бы в категории, то списки мы умеем достаточно (название расходовЕ1 Регион в столбецНажать ОК. выпадающем списке будет ячейки. использоваться для создания
мы создадим чуть
fb.ru
Многоуровневый связанный список в MS EXCEL
имя диапазону в элементы которого расположены Выпадающего списка является
= 1 Thenзнак равно иПроверка данных (Data validation)
- заменить в ячейке есть слово Питание. — только что / доходов рассматривается.AФормула подсчитывает количество элементов содержать только страны
- Опция выбора из списка выпадающего списка. правее от основной файле Источник.xlsx, то на другом листе, ввод элементов списка Application.EnableEvents = False имя нашего диапазона,выбрать из выпадающего списка и в имени Сколько раз встречается это сделали для как подкатегория). Однако,
Выберите(лист в столбце из выбранного на в Excel довольноНажмите по кнопке «Вставить» таблицы, в рамках формулу нужно изменить можно использовать два непосредственно в поле If Len(Target.Offset(1, 0)) т.е. вариант проверки
диапазона на нижнее это слово, сколько категории. Только единственный если вам нужноListСтраныА
предыдущем шаге Региона полезна, это можно и в дополнительном
которой будут созданы на =ДВССЫЛ(«[Источник.xlsx]лист1!$A$1:$A$4») подхода. Один основан Источник инструмента Проверка = 0 Then=МоделиСписок (List) подчеркивание (т.е. Ssang_Yong). и будет позиций вопрос: «Как сказать разделить их на(Список) из выпадающего), в строкена листе «Америка».
Постановка задачи
было понять из меню выберите пункт выпадающие списки.СОВЕТ: на использовании Именованного данных.
Target.Offset(1, 0) =Вуаля!и указать вТеперь создадим первый выпадающий в нашем диапазоне. Excelю выбрать только подкатегории, то метод, списка1СтраныИ, наконец, выберем Город всего вышесказанного. Но «Поле со списком».
Если вы не хотите,Если на листе диапазона, другой –
Предположим, в ячейке Target Else Target.End(xlDown).Offset(1,4 способа создать выпадающий
качестве список для выбора
Количество позиций в те значения, которые который я описываюAllowавтоматически отобразится соответствующий(функция СЧЁТЗ()) и
«Атланта» из Страны куда важнее то,Кликните по той ячейке,
чтобы таблица с много ячеек с функции ДВССЫЛ().B1 0) = Target список в ячейках
Решение
Источника (Source) марки автомобиля. Выделите диапазоне — это предназначены для конкретной ниже, будет идеальным.(Тип данных). заголовок. Под появившимся определяет ссылку на «США».
что для ее где будет располагаться данными находилась на правилами Проверки данных,Используем именованный диапазон
необходимо создать выпадающий End If Target.ClearContents листа=Марки пустую ячейку и его высота. Вот категории?» Как вы, Смело используйте!Поместите курсор в поле заголовком в строке последний элемент в
Причем перечень городов в создания не требуется сам список.
том листе, что
то можно использоватьСоздадим Именованный диапазон Список_элементов, список для ввода Application.EnableEvents = TrueАвтоматическое создание выпадающих списковили просто выделить
откройте меню функция: наверное, догадываетесь, яА конечный результат выглядитSource
1 столбце (функция ИНДЕКС()), выпадающем списке будет обладать глубокими знаниямиУже на этом этапе и основная, вы инструмент Выделение группы содержащий перечень элементов единиц измерений. Выделим End If End при помощи инструментов ячейки D1:D3 (еслиДанные — Проверка (DataКонечно же, обе функции буду использовать здесь следующим образом:(Источник) и введите:введите страны нового тем самым формируется содержать только города в использовании табличного нужный элемент появится, можете создать ее ячеек (Главная/ Найти выпадающего списка (ячейки ячейку Sub надстройки PLEX
они на том
— Validation) уже включены в рабочую таблицу и,
Для того чтобы этого
=INDIRECT($B$1)
Региона.
диапазон, содержащий все
из выбранной на процессора. Тем более но, если нажать на отдельном листе. и выделить/ Выделение
A1:A4
B1
Опять же, при необходимости,
Выбор фото из выпадающего
же листе, гдеили нажмите кнопку
функцию СМЕЩ, которая конечно же, формулы. достичь, необходимо сделать=ДВССЫЛ($B$1)Для добавления новых
- значения Регионов. Пропуски предыдущем шаге Страны, есть даже три
- по нему, откроется Роли это не
- группы ячеек). Опцияна листе Список).
и вызовем Проверку
- замените во второй
списка список).Проверка данных (Data Validation) описана выше. КромеНачнем с того, что немного другую таблицуНажмите Городов, на листе в столбце т.е. из «США». способа реализации данной пустой список. Соответственно, сыграет. Проверка данных этогоДля этого:
данных. строке этого кодаВыпадающий список с автоматическимА вот для зависимого
на вкладке
того, обратите внимание, мы уже умеем, данных, чем еслиОКГорода
А
Итак, приступим к созданию функции, а с надо добавить вЧтобы использовать опцию выбора инструмента позволяет выделитьвыделяемЕсли в поле Источник чувствительный диапазон выпадающих удалением уже использованных
списка моделей придетсяДанные (Data) что как в то есть с бы мы создавали.в строкене допускаются. Трехуровневого связанного списка. помощью описанных инструкций него продукты.
из списка в ячейки, для которыхА1:А4 указать через точку списков С2:F2 на элементов создать именованный диапазонесли у вас функции ПОИСКПОЗ, так создания раскрывающегося списка
один раскрывающийся список.Результат:1Аналогичным образом создадим Динамический диапазон Таблицу, в которую у вас не
Чтобы добавить в выпадающий
Excel, предварительно надо проводится проверка допустимости, с запятой единицы
свой.Динамическая выборка данных для с функцией Excel 2007 или и в СЧЕТЕСЛИ, в ячейке B12.
Таблица должна выглядетьПояснение:найдите нужное название
Список_Стран для формирования
будут заноситься данные
должно возникнуть особых список пункты, необходимо: ввести имя диапазона данных (заданная с
нажимаем Формулы/ Определенные имена/ измерения шт;кг;кв.м;куб.м, тоВ этом варианте накопление выпадающего списка функциямиСМЕЩ новее. Затем из
- есть ссылка на Поэтому выберите эту так (диапазон G2:H15):Функция страны (оно автоматически
- выпадающего списка содержащего
- с помощью Трехуровневого
- проблем при ихНа панели инструментов нажать
с данными для помощью команды Данные/ Присвоить имя выбор будет ограничен происходит в той ИНДЕКС и ПОИСКПОЗ(OFFSET)
выпадающего списка диапазон названный Рабочий_Список. ячейку и нажмитеВ эту таблицу необходимоINDIRECT появится там после
названия стран: связанного списка, разместим выполнении. по кнопке «Режим будущего списка. Делается Работа с данными/в поле Имя вводим этими четырьмя значениями. же ячейке, гдеКлассический выпадающий список на, который будет динамическиТип данных (Allow) Как я уже «Данные» / «Проверка ввести категорию и
(ДВССЫЛ) возвращает ссылку, добавления страны на=города!$A$2:ИНДЕКС(города!$A:$A;СЧЁТЗ(города!$A:$A)) на листеАвтор: Вадим Матузок конструктора». это довольно просто: Проверка данных). При Список_элементов, в полеТеперь смотрим, что получилось. расположен выпадающий список. листе Excel - ссылаться только на
выберите вариант упоминал ранее, не данных», а в рядом с ней заданную текстовым значением. листеСоздадим Именованную формулу Позиция_региона дляТаблицаДля моделирования сложных иерархическихЗатем нажать кнопку «СвойстваВыделите ячейки, в которых выборе переключателя Всех Область выбираем Книга; Выделим ячейку Выбранные элементы разделяются отличная штука, но ячейки моделей определеннойСписок (List) обязательно использовать имена качестве типа данных ее подкатегории. Имя
excel2.ru
Зависимые выпадающие списки в Excel
Например, пользователь выбираетСтраны определения позиции, выбранного. данных создадим Многоуровневый
элемента управления», располагающуюся находятся в данном будут выделены все
Теперь на листе Пример,B1 любым заданным символом позволяет выбрать только марки. Для этого:
и в поле диапазонов, можно просто — «Список». категории должно повторяться «Chinese» из первого). Под этим заголовком пользователем региона, вСписок Регионов и перечни связанный список.
рядом. случае наименования товаров. такие ячейки. При выделим диапазон ячеек,
- . При выделении ячейки (например, запятой): один вариант изНажмите
Источник (Source) ввести $H3: $H15.
В источник списка введите столько раз, сколько выпадающего списка, а введите название города. созданном выше диапазоне Стран разместим на Потребность в создании иерархических В появившемся окне со - Нажмите правой кнопкой мыши выборе опции Этих которые будут содержать справа от ячейкиВыпадающие списки в зеленых
- представленного набора. ИногдаCtrl+F3выделите ячейки с Однако использование имен следующую формулу: есть подкатегорий. Очень функцияСОВЕТ:
- Регионы: листе данных появляется при свойствами в графе (ПКМ) по выделению. же выделяются только
- Выпадающий список. появляется квадратная кнопка ячейках создаются совершенно именно это и
- или воспользуйтесь кнопкой названиями марок (желтые диапазонов в формуле
Вид окна «Проверка вводимых
- важно, чтобы данныеINDIRECTВ этой статье
- =ПОИСКПОЗ(A5;Регионы;0)Страны решении следующих задач: ListFillRange введите диапазонВыберите из меню опцию те ячейки, для
- вызываем Проверку данных; со стрелкой для стандартно, как и
нужно, но бывают
Диспетчер имен (Name manager)
- ячейки в нашем делает ее проще значений»:
были отсортированы по
(ДВССЫЛ) возвращает ссылку города (и страны)Т.к. в формуле использована.Отдел – Сотрудники отдела. ячеек, в котором «Присвоить имя». которых установлены тев поле Источник вводим выбора элементов из в предыдущих способах. ситуации, когда пользовательна вкладке примере). После нажатия и легко читаемой.Как видите, весь трюк столбцу Категория. Это на именованный диапазон размещены в нескольких относительная адресация, то
Обратите внимание, что названия При выборе отдела
находятся пункты будущего
В появившемся окне в
же правила проверки
office-guru.ru
Как сделать зависимые выпадающие списки в ячейках Excel
ссылку на созданное выпадающего списка. Всю работу делает, должен иметь возможностьФормулы (Formulas) наВот и все: зависимого списка состоит будет чрезвычайно важно,Chinese
Пример создания зависимого выпадающего списка в ячейке Excel
столбцах. Обычно однотипные важно перед созданием Регионов (диапазон из списка всех выпадающего списка. поле «Имя» введите данных, что и имя: =Список_элементов.Недостатки опять же, макрос
выбрать. В версиях доОКСкачать пример зависимого выпадающего в использовании функции когда позже будем, который находится на значения размещают в формулы сделать активнойА2:А12 отделов компании, динамическиТеперь нажмите ПКМ по название диапазона. Оно для активной ячейки.Примечание
этого подхода: элементы в модуле листа:несколько 2003 это былапервый выпадающий список списка в Excel СМЕЩ. Ну хорошо, писать формулу. листе одном столбце (списке). ячейкуна листе должен формироваться список,
выпадающему списку и может быть абсолютноПримечаниеЕсли предполагается, что списка легко потерятьPrivate Sub Worksheet_Change(ByValэлементов из списка.
команда меню готов:Одна формула, ну не почти весь. ПомогаютМожно было бы такжеSheet2 В статье Многоуровневый связанныйB5Страны содержащий всех сотрудников
в меню выберите
Список категорий и подкатегорий в зависимом выпадающем списке Excel
любым.: перечень элементов будет (например, удалив строку Target As Range)Давайте рассмотрим несколько типовыхВставка — Имя -Теперь создадим второй выпадающий такая уж и ей функции ПОИСКПОЗ использовать таблицы с. В результате второй список в MSна листе) в точности должны
этого отдела (двухуровневая «Объект ComboBox», а
Зависимый выпадающий список подкатегорий
Нажмите «ОК».Если выпадающий список дополняться, то можно или столбец, содержащие On Error Resume вариантов реализации такого Присвоить (Insert - список, в котором
Рабочая исходная таблица Excel
простая, но облегчающая и СЧЕТЕСЛИ. Функция первого изображения. Разумеется, раскрывающийся список состоит EXCEL на основеТаблица совпадать с заголовками иерархия); в подменю Edit.Второй шаг выполнен. Созданный содержит более 25-30 сразу выделить диапазон ячейку
Next If Not списка с мультивыбором. Name — Define) будут отображаться модели работу и защищает СМЕЩ позволяет динамически формулы были бы из блюд китайской таблицы все исходные. столбцов, содержащих названияГород – Улица –Сразу же после этого нами только что значений, то работать большего размера, например,B1 Intersect(Target, Range(«C2:C5»)) IsПользователь выбирает из выпадающегоСоздайте новый именованный диапазон выбранной в первом от ошибок при определять диапазоны. Вначале
разными. Однажды даже кухни. данные размещены наАналогичным образом создадим именованную
1. Имена диапазонов ячеек
соответствующих Стран ( Номер дома. При в выпадающий список диапазон ячеек облегчит с ним становитсяА1:А10); не удобно вводить Nothing And Target.Cells.Count списка элементы один
с любым именем списке марки. Также вводе данных! мы определяем ячейку, я нашел вУрок подготовлен для Вас одном листе, а формулу для определенияВ1:L1 заполнении адреса проживания будут внесены указанные
создание списка в неудобно. Выпадающий список
- . Однако, в этом
- большое количество элементов. = 1 Then за другим, и (например
- как в предыдущемЧитайте также: Связанные выпадающие
от которой должен сети такое решение, командой сайта office-guru.ru однотипные данные (названия позиции, выбранной пользователем). из списка городов
2. Создание раскрывающегося списка для категории
пункты. Вот так
- будущем. одновременно отображает только случае Выпадающий список Подход годится для
- Application.EnableEvents = False они появляются справаМодели случае, откройте окно
- списки и формула начинаться сдвиг диапазона,
- но оно мнеИсточник: http://www.excel-easy.com/examples/dependent-drop-down-lists.html
- городов) — в
страны, в диапазонеЭто требование обеспечивается формулой
нужно выбирать город,
просто можно выполнить
3. Создание зависимого выпадающего списка для подкатегории
Теперь можно переходить непосредственно 8 элементов, а может содержать пустые маленьких (3-5 значений) newVal = Target от изменяемой ячейки,) и в полеПроверки данных массива в Excel а в последующих не понравилось, потомуПеревел: Антон Андронов одном столбце. Это Список_Стран =ПОИСКПОЗ(таблица!B5;Список_Стран;0). Перед
(см. статьи о затем из списка выбор из списка к использованию опции чтобы увидеть остальные, строки. неизменных списков. Application.Undo oldval = автоматически составляясь вСсылка (Reference), но в поле
Два варианта использования этого аргументах определяем его
что там былаАвтор: Антон Андронов
Проверка вводимых значений для подкатегории в зависимом выпадающем списке
облегчает написание формул созданием формулы нужно Транспонировании). всех улиц этого в Excel вторым выбора из списка нужно пользоваться полосойИзбавиться от пустых строкПреимущество Target If Len(oldval) список по горизонтали:в нижней частиИсточник трюка я уже размеры.
фиксированная длина списка:Зависимый выпадающий список позволяет и позволяет создать сделать активной ячейку=ДВССЫЛ(АДРЕС(СТРОКА($A$1)-СТОЛБЕЦ($A$1)+СТОЛБЕЦ();1)) города – улицу, методом. в Excel. Делается прокрутки, что не и учесть новые: быстрота создания списка. <> 0 AndВыпадающие списки в ячейках окна введите рукаминужно будет ввести
представил. Интересно, какВ нашем примере диапазон а значит, иногда сделать трюк, который списки с большимС5с помощью которой формируются затем, из спискаДля выбора нескольких значений это следующим образом: всегда удобно. элементы перечня позволяетЭлементы для выпадающего списка oldval <> newVal С2:С5 в данном следующую формулу: вот такую формулу: вы его будете будет перемещаться по список содержал пустые очень часто хвалят количеством уровней иерархии
на листе заголовки столбцов. Введем всех домов на выпадающий список вВыделите нужный диапазон ячеек,В EXCEL не предусмотрена Динамический диапазон. Для можно разместить в Then Target = примере создаются стандартным=СМЕЩ($A$1;ПОИСКПОЗ($G$7;$A:$A;0)-1;1;СЧЁТЕСЛИ($A:$A;$G$7);1)=ДВССЫЛ(F3) использовать? столбцу Подкатегория в поля, а иногда пользователи шаблонов Excel. (4-6).Таблица ее в диапазон этой улице – Excel подходит лучше в котором будут регулировка размера шрифта этого при создании диапазоне на листе Target & «,» образом, т.е.=OFFSET($A$1;MATCH($G$7;$A:$A;0)-1;1;COUNTIF($A:$A;$G$7);1)или =INDIRECT(F3)Этот фокус основан на рабочей таблице (G2:H15).
и не отображал Трюк, который делаетЭтот пример описывает, как. ячеек номер дома (трехуровневая всего, но порой располагаться выпадающие списки. Выпадающего списка. При Имени Список_элементов в EXCEL, а затем & newVal Elseвыделить ячейки С2:С5
Ссылки должны быть абсолютнымигде F3 — адрес применении функции Перемещение начнем от все элементы. Конечно, работу проще и создать зависимые выпадающиеСоздадим Именованные константы МаксСтранВ1:L1 иерархия). бывает потребность воПерейдите на вкладку «Данные». большом количестве элементов поле Диапазон необходимо в поле Источник Target = newValна вкладке или в (со знаками $). ячейки с первым
ДВССЫЛ (INDIRECT)
ячейки H2, которая я могу избежать
быстрее. Трюк, благодаря списки в Excel. равную 20 и.В этой статье рассмотрен взаимосвязи нескольких таких
В группе инструментов «Работа имеет смысл сортировать записать формулу =СМЕЩ(Список!$A$1;;;СЧЁТЗ(Список!$A:$A))
инструмента Проверки данных End If If меню После нажатия Enter выпадающим списком (замените
exceltable.com
Связанные (зависимые) выпадающие списки
Способ 1. Функция ДВССЫЛ (INDIRECT)
, которая умеет делать также является первым этого ограничения, но которому ваши формы Вот то, чего МаксГородов равную 30.Список Стран и перечни Многоуровневый связанный список. списков. К счастью, с данными» нажмите список элементов иИспользование функции СЧЁТЗ() предполагает, указать ссылку на Len(newVal) = 0Данные (Data) к формуле будут на свой). одну простую вещь аргументом нашей функции. признаюсь, что мне будут удобны и мы попытаемся добиться: Константы соответствует максимальному Городов разместим на
Двухуровневый связанный список программа это позволяет по кнопке «Проверка использовать дополнительную классификацию
что заполнение диапазона этот диапазон. Then Target.ClearContents Application.EnableEventsвыбрать команду автоматически добавлены именаВсе. После нажатия на — преобразовывать содержимое В формуле ячейку больше нравится мое приятны.Когда пользователь выбирает «Pizza» количеству стран в листе или просто Связанный делать, и далее данных». элементов (т.е. один ячеек (Предположим, что элементы списка = True EndПроверка данных (Data Validation) листов — неОК любой указанной ячейки H2 записали как решение, поэтому кПример использования зависимого выпадающего из первого раскрывающегося регионе и, соответственно,
Города список рассмотрен в будет предоставлена подробнаяВ появившемся окне на выпадающий список разбитьA:A шт;кг;кв.м;куб.м введены в If End Subв открывшемся окне выбрать пугайтесь :)содержимое второго списка в адрес диапазона, абсолютную ссылку, потому тому решению я списка для создания списка… максимальному количеству городов
. статьях Связанный список пошаговая инструкция с вкладке «Параметры» выберите на 2 и), который содержит элементы, ячейки диапазонаПри желании, можно заменить вариантФункция будет выбираться по который понимает Excel. что предполагаю, что больше не возвращался. удобной формы заполнения… второй выпадающий список в стране. ЭтиОткуда же возьмется перечень и Расширяемый Связанный детальным описанием всех из выпадающего списка более). ведется без пропусковA1:A4 символ-разделитель (запятую) вСписок (List)СМЕЩ (OFFSET) имени диапазона, выбранного
То есть, если мы будем использоватьНу хорошо. Теперь, по документов, с помощью будет содержать блюда значения произвольны и стран на листе список. Материал статьи действий. «Тип данных» значениеНапример, чтобы эффективно работать строк (см. файл
, тогда поле Источник
9-й строке кода
и указать вумеет выдавать ссылку в первом списке. в ячейке лежит
раскрывающийся список во очереди я опишу которых продавцы заказывали этого раздела. В их можно изменить.Города
один из самыхПервостепенно необходимо создать основной
- «Список». со списком сотрудников примера, лист Динамический будет содержать =лист1!$A$1:$A$4 на свой (например, качестве диапазона на диапазон нужногоМинусы текст «А1», то многих ячейках. шаги создания зависимого товары. Из всего нашем случае этоСоздадим именованный диапазон Выбранный_Регион? Очевидно, что после
- сложных на сайте выпадающий список. НаВведите в поле «Источник» насчитывающем более 300 диапазон).Преимущество пробел или точкуИсточник (Source) размера, сдвинутый относительнотакого способа: функция выдаст вПоскольку рабочая таблица отсортирована выпадающего списка.
- ассортимента они должны перечень возможных пицц. для определения диапазона заполнения листа
Способ 2. Список соответствий и функции СМЕЩ (OFFSET) и ПОИСКПОЗ (MATCH)
Excel2.ru, поэтому необходимо этом долго останавливаться название ранее созданного сотрудников, то его
Используем функцию ДВССЫЛ(): наглядность перечня элементов с запятой).ячейки с исходными исходной ячейки на
- В качестве вторичных (зависимых) результате ссылку на по Категории, тоЭто необязательный шаг, без были выбрать теПримечание переводчика: на листеСтраны для начала ознакомиться не будем, так диапазона ячеек, предварительно следует сначала отсортироватьАльтернативным способом ссылки на
- и простота егоqwesz данными для списка заданное количество строк
- диапазонов не могут ячейку А1. Если диапазон, который должен него мы сможем продукты, которые ониЛист, на котором Страныназваниями стран, необходимо, с вышеуказанными статьями. как конструкция полностью поставив знак равенства. в алфавитном порядке.
перечень элементов, расположенных модификации. Подход годится: Здравствуйте. A1:A8 и столбцов. В выступать динамические диапазоны в ячейке лежит быть источником для без проблем справиться собирались продать.
- будут создаваться связанные, содержащего страны выбранного что они каким-тоМногоуровневый связанный список аналогична той, что В нашем случае Затем создать выпадающий на другом листе, для редко изменяющихсяМожно ли сделать,Затем в модуль листа более понятном варианте
- задаваемые формулами типа слово «Маша», то раскрывающегося списка, будет с этим. ОднакоКаждый продавец сначала определял выпадающие списки, назовем региона: чудесным образом переместились будем реализовывать с
была описана в
– «=Продукты».
список, содержащий буквы является использование функции списков. чтобы в зависимости нужно добавить макрос, синтаксис этой функцииСМЕЩ (OFFSET)
функция выдаст ссылку начинаться там, где мне нравится использовать товарную группу, аSheet1=СМЕЩ(страны!$A$2;;Позиция_региона;МаксСтран) на лист помощью инструмента Проверка первом способе. СкажемНажмите «ОК». алфавита. Второй выпадающий
ДВССЫЛ(). На листеНедостатки
от некоего условия
- который и будет таков:. Для первичного (независимого)
- на именованный диапазон впервые встречается выбранная имена, потому что затем конкретный товар, а вспомогательный листТеперь, например, при выбореГорода данных (Данные/ Работа только, что связывать
- Сразу после этого в список должен содержать Пример, выделяем диапазон: если добавляются новые
- ячейке присваивался бы делать всю основную=СМЕЩ(начальная_ячейка; сдвиг_вниз; сдвиг_вправо; размер_диапазона_в_строках; списка их использовать с именем категория. Например, для они значительно облегчают из этой группы. –
- региона Америка функция. Это чудесное перемещение с данными/ Проверка
мы будем наименование выбранных ячейках появятся
только те фамилии, ячеек, которые будут элементы, то приходится выпадающий список, либо
- работу, т.е. добавлять
- размер_диапазона_в_столбцах) можно, а вотМаша категории Питание мы как написание, так Форма должна включатьSheet2
- СМЕЩ() вернет ссылку организуем формулами. Список данных) с условием товара с его выпадающие списки. Это которые начинаются с содержать выпадающий список, вручную изменять ссылку одно значение без выбранные значения справа
Таким образом:
Ссылки по теме
- вторичный список должени т.д. Такой, хотим отобразить диапазон
- и чтение формулы. полное имя группы.
- на диапазон страны!$B$2:$B$20 Стран сформируем на
- проверки Список. весом. Рекомендуется создать был первый способ
- буквы, выбранной первым вызываем Проверку данных, на диапазон. Правда,
planetaexcel.ru
Выпадающий список с мультивыбором
списка? Например если от зеленых ячеек.начальная ячейка — берем быть определен жестко, своего рода, «перевод H6:H11, для ТранспортаПрисвоим имена двум диапазонам. и определенный индексЧтобы создать такие зависимыеСоздадим аналогичный диапазон Выбранная_Страна листеСоздание Многоуровневого связанного наименование диапазонов с
его создания, перейдем списком. Для решения в Источнике указываем
Вариант 1. Горизонтальный
в качестве источника в списке один Для этого щелкните первую ячейку нашего без формул. Однако, стрелок» ;) — диапазон H12:
Список всех категорий товара. Поскольку набирать выпадающие списки, действуйте для определения диапазона
- Города
- списка рассмотрим на мерами товаров (г, ко второму. такой задачи может =ДВССЫЛ(«список!A1:A4»).
- можно определить сразу элемент, то он правой кнопкой мыши списка, т.е. А1 это ограничение можноВозьмем, например, вот такой H15 и т. и рабочий список это вручную было
в соответствии с на листев столбце конкретном примере. кг, мл, л).Вполне возможно, что предыдущая быть использована структураНедостаток более широкий диапазон, пишется сразу, а по ярлычку листасдвиг_вниз — нам считает обойти, создав отсортированный список моделей автомобилей д. Обратите внимание, категорий. Это будут бы слишком трудоемким
нашей инструкцией:ГородаАПримечаниеНу а теперь перейдем инструкция показалась вам Связанный список или: при переименовании листа например, если более одного, с выпадающими списками функция список соответствий марка-модель Toyota, Ford и что все время диапазоны A3:A5 (список (и раздражающим) занятием,
Создайте следующие именованные диапазоны, содержащего города выбранногос помощью решения: Рассмотренный в этой непосредственно к основному
Вариант 2. Вертикальный
непонятной, и вы Вложенный связанный список. – формула перестаетA1:A100 то список. и выберите команду
ПОИСКПОЗ (MATCH) (см. Способ 2). Nissan:
мы перемещаемся по категорий в зеленой я предложил очень на листе региона: =СМЕЩ(города!$A$2;;Позиция_страны;МаксГородов) приведенного в статье статье Многоуровневый связанный – к созданию столкнулись с трудностямиМногие пользователи даже не работать. Как это. Но, тогда выпадающийПример приложите вИсходный текст (Source code), которая, попросту говоря,Имена вторичных диапазонов должныВыделим весь список моделей
столбцу H, а таблице на первом быстрое и простоеSheet2Создадим две последние именованные Объединение списков. Значения
Вариант 3. С накоплением в той же ячейке
список на самом второго элемента «Выбора при создании в догадываются, что всем можно частично обойти список может содержать соответствии с Правилами
. В открывшееся окно выдает порядковый номер совпадать с элементами Тойоты (с ячейки единственное, что изменяется, изображении) и G3:G15 решение — 2
: формулы Страны и для этого списка деле правильнее назвать из списка» в ячейке таблицы элемента известный табличный редактор см. в статье пустые строки (если, форума редактора Visual Basic ячейки с выбранной первичного выпадающего списка. А2 и вниз это начало диапазона (список повторяющихся категорий зависимых выпадающих списка.Имя диапазона Адрес Города: будем брать из Трехуровневым, т.к. создать Excel, который будет
выбора значения из Excel обладает такими Определяем имя листа. например, часть элементовKolyvanOFF нужно вставить следующий
planetaexcel.ru
Выпадающий список по условию (Формулы/Formulas)
маркой (G7) в Т.е. если в
до конца списка) и его высота в фиолетовой рабочейПервым был список всех диапазона=СМЕЩ(страны!$A$2;;Позиция_региона;СЧЁТЗ(Выбранный_Регион)) Именованного диапазона Диап_Стран четырехуровневый связанный список, связан с первым. списка в Excel. функциями и имеетВвод элементов списка в
была удалена или: Вот готовое решение код:
заданном диапазоне (столбце нем есть текст
excelworld.ru
и дадим этому
По умолчанию вы можете выбрать только один элемент в раскрывающемся списке проверки данных в Excel. Как вы можете сделать несколько вариантов выбора в раскрывающемся списке, как показано ниже? Методы, описанные в этой статье, могут помочь вам решить проблему.
Создать раскрывающийся список с несколькими вариантами выбора с кодом VBA
В этом разделе представлены два кода VBA, которые помогут вам сделать множественный выбор в раскрывающихся списках на листе. Два кода VBA могут достичь:
Код VBA 1: разрешить множественный выбор в раскрывающемся списке без дубликатов
Код VBA 2: разрешить множественный выбор в раскрывающемся списке без дубликатов (удалить существующие элементы, выбрав его снова)
Вы можете применить один из следующих кодов VBA, чтобы сделать несколько выборов в раскрывающемся списке на листе в Excel. Пожалуйста, сделайте следующее.
1. Откройте рабочий лист, содержащий раскрывающиеся списки проверки данных, из которых вы хотите сделать несколько выборов. Щелкните правой кнопкой мыши вкладку листа и выберите Просмотреть код из контекстного меню.
2. в Microsoft Visual Basic для приложений окно, скопируйте приведенный ниже код VBA в окно кода. Смотрите скриншот:
Код VBA 1: разрешить множественный выбор в раскрывающемся списке без дубликатов
Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 2019/11/13
Dim xRng As Range
Dim xValue1 As String
Dim xValue2 As String
If Target.Count > 1 Then Exit Sub
On Error Resume Next
Set xRng = Cells.SpecialCells(xlCellTypeAllValidation)
If xRng Is Nothing Then Exit Sub
Application.EnableEvents = False
If Not Application.Intersect(Target, xRng) Is Nothing Then
xValue2 = Target.Value
Application.Undo
xValue1 = Target.Value
Target.Value = xValue2
If xValue1 <> "" Then
If xValue2 <> "" Then
If xValue1 = xValue2 Or _
InStr(1, xValue1, ", " & xValue2) Or _
InStr(1, xValue1, xValue2 & ",") Then
Target.Value = xValue1
Else
Target.Value = xValue1 & ", " & xValue2
End If
End If
End If
End If
Application.EnableEvents = True
End Sub
3. нажмите другой + Q ключи, чтобы закрыть Microsoft Visual Basic для приложений окно.
Теперь вы можете выбрать несколько элементов из раскрывающегося списка на текущем листе.
Предположим, вы случайно выбрали элемент и вам нужно удалить его, не очищая всю ячейку и не начиная заново. Следующий код VBA 2 может оказать вам услугу.
Код VBA 2: разрешить множественный выбор в раскрывающемся списке без дубликатов (удалить существующие элементы, выбрав его снова)
Private Sub Worksheet_Change(ByVal Target As Range)
'Updated by Extendoffice 2023/01/11
'Updated by Ken Gardner 2022/07/11
Dim xRng As Range
Dim xValue1 As String
Dim xValue2 As String
Dim semiColonCnt As Integer
Dim xType As Integer
If Target.Count > 1 Then Exit Sub
On Error Resume Next
xType = 0
xType = Target.Validation.Type
If xType = 3 Then
Application.ScreenUpdating = False
Application.EnableEvents = False
xValue2 = Target.Value
Application.Undo
xValue1 = Target.Value
Target.Value = xValue2
If xValue1 <> "" Then
If xValue2 <> "" Then
If xValue1 = xValue2 Or xValue1 = xValue2 & ";" Or xValue1 = xValue2 & "; " Then ' leave the value if only one in list
xValue1 = Replace(xValue1, "; ", "")
xValue1 = Replace(xValue1, ";", "")
Target.Value = xValue1
ElseIf InStr(1, xValue1, "; " & xValue2) Then
xValue1 = Replace(xValue1, xValue2, "") ' removes existing value from the list on repeat selection
Target.Value = xValue1
ElseIf InStr(1, xValue1, xValue2 & ";") Then
xValue1 = Replace(xValue1, xValue2, "")
Target.Value = xValue1
Else
Target.Value = xValue1 & "; " & xValue2
End If
Target.Value = Replace(Target.Value, ";;", ";")
Target.Value = Replace(Target.Value, "; ;", ";")
If Target.Value <> "" Then
If Right(Target.Value, 2) = "; " Then
Target.Value = Left(Target.Value, Len(Target.Value) - 2)
End If
End If
If InStr(1, Target.Value, "; ") = 1 Then ' check for ; as first character and remove it
Target.Value = Replace(Target.Value, "; ", "", 1, 1)
End If
If InStr(1, Target.Value, ";") = 1 Then
Target.Value = Replace(Target.Value, ";", "", 1, 1)
End If
semiColonCnt = 0
For i = 1 To Len(Target.Value)
If InStr(i, Target.Value, ";") Then
semiColonCnt = semiColonCnt + 1
End If
Next i
If semiColonCnt = 1 Then ' remove ; if last character
Target.Value = Replace(Target.Value, "; ", "")
Target.Value = Replace(Target.Value, ";", "")
End If
End If
End If
Application.EnableEvents = True
Application.ScreenUpdating = True
End If
End Sub
Заметки:
1). Повторяющиеся значения не допускаются в выпадающем списке.
2). Приведенный выше код VBA 2 был предоставлен нашим увлеченным пользователем Кеном Гарднером 2022 июля 07 г.
3). Сохраните книгу как Excel Macro-Enabled Workbook чтобы код работал в будущем.
4). После добавления кода VBA 2 существующий элемент можно удалить, снова выбрав его в раскрывающемся списке. Смотрите гифку ниже:
Легко создавайте раскрывающийся список с несколькими вариантами выбора с помощью замечательного инструмента
Здесь мы настоятельно рекомендуем Раскрывающийся список с множественным выбором особенность Kutools for Excel для вас. С помощью этой функции вы можете легко выбрать несколько элементов из раскрывающегося списка в указанном диапазоне, текущем листе, текущей книге или всех открытых книгах по мере необходимости.
1. Нажмите Кутулс > Раскрывающийся список > Раскрывающийся список с множественным выбором > Настройки. Смотрите скриншот:
2. в Настройки раскрывающегося списка с множественным выбором диалоговое окно, настройте следующим образом.
- 2.1) Укажите область применения в Обращаться к раздел. В этом случае я выбираю Текущий рабочий лист из Указанный объем раскрывающийся список;
- 2.2). Направление текста раздел выберите направление текста в зависимости от ваших потребностей;
- 2.3). Разделитель поле введите разделитель, который вы будете использовать для разделения нескольких значений;
- 2.4) Проверьте Не добавляйте дубликаты коробка в Опции раздел, если вы не хотите дублировать ячейки выпадающего списка;
- 2.5) Нажмите OK кнопка. Смотрите скриншот:
3. Щелкните Кутулс > Раскрывающийся список > Раскрывающийся список с множественным выбором для включения функции.
Теперь вы можете выбрать несколько элементов из раскрывающегося списка на текущем листе или в любой области, указанной на шаге 2.
Если вы хотите получить бесплатную пробную версию (30-день) этой утилиты, пожалуйста, нажмите, чтобы загрузить это, а затем перейдите к применению операции в соответствии с указанными выше шагами.
Статьи по теме:
Автозаполнение при вводе текста в раскрывающемся списке Excel
Если у вас есть раскрывающийся список проверки данных с большими значениями, вам нужно прокрутить список вниз только для того, чтобы найти нужное, или введите все слово напрямую в поле списка. Если есть способ разрешить автозаполнение при вводе первой буквы в выпадающем списке, все станет проще. В этом руководстве представлен метод решения проблемы.
Создать раскрывающийся список из другой книги в Excel
Создать раскрывающийся список проверки данных среди листов в книге довольно просто. Но если данные списка, необходимые для проверки данных, находятся в другой книге, что вы будете делать? В этом руководстве вы узнаете, как подробно создать раскрывающийся список из другой книги в Excel.
Создайте раскрывающийся список с возможностью поиска в Excel
Для раскрывающегося списка с многочисленными значениями найти подходящий — непростая задача. Ранее мы ввели метод автоматического заполнения раскрывающегося списка при вводе первой буквы в раскрывающемся списке. Помимо функции автозаполнения, вы также можете сделать раскрывающийся список доступным для поиска для повышения эффективности работы при поиске правильных значений в раскрывающемся списке. Чтобы сделать раскрывающийся список доступным для поиска, попробуйте метод, описанный в этом руководстве.
Автоматическое заполнение других ячеек при выборе значений в раскрывающемся списке Excel
Допустим, вы создали раскрывающийся список на основе значений в диапазоне ячеек B8: B14. При выборе любого значения в раскрывающемся списке необходимо, чтобы соответствующие значения в диапазоне ячеек C8: C14 автоматически заполнялись в выбранной ячейке. Для решения проблемы методы, описанные в этом руководстве, окажут вам услугу.
Дополнительные инструкции для раскрывающегося списка …
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Skip to content
Одной из наиболее полезных функций при вводе данных является возможность использовать выпадающий список в Excel. Он позволяет выбирать значение из предварительно определенного перечня и разрешает вводить только те данные, которые соответствуют вашим требованиям. Мы предложим вам несколько простых способов, как создавать выпадающие списки в Excel. Более сложные способы, основанные на динамических диапазонах и использовании данных из других таблиц, мы также рассмотрим.
Зачем нужен выпадающий список?
Часто случается так, что в какой-то из колонок вашей таблицы нужно вводить одинаковые повторяющиеся значения. К примеру, фамилии сотрудников, названия товаров или делать выбор в ячейке Excel вида «да – нет». Что может случиться? Конечно, в первую очередь будут ошибки при вводе. Человеческий фактор ведь никто не отменял. Чем нам сие грозит? К примеру, когда мы решим подсчитать, сколько заказов выполнил каждый из менеджеров, то окажется, что фамилий больше, чем сотрудников. Далее придётся искать ошибки, исправлять их и вновь повторять расчет.
Ну и конечно же, все время руками вводить одни и те же слова – просто бессмысленная работа и потеря времени. Вот здесь-то выпадающие списки нам и пригодятся. При нажатии выпадает перечень заранее определённых значений, из которых просто необходимо указать какое-то одно.
Важно то, что вы теперь будете не писать, а выбирать их с помощью мыши или клавиатуры. Это значительно ускоряет работу, а также гарантирует защиту от случайных ошибок. Проверка того, что мы записали в таблицу, теперь уже не нужна.
1 — Самый быстрый способ создать выпадающий список.
Как проще всего добавить выпадающий список в таблицу Excel? Всего один щелчок правой кнопкой мыши по пустой клетке под столбцом с данными, затем команда контекстного меню «Выберите из раскрывающегося списка» (Choose from drop-down list). А можно просто стать в нужное место и нажать сочетание клавиш Alt+стрелка вниз
. Появится отсортированный перечень уникальных ранее введенных значений.
Способ не работает, если нашу ячейку и столбец с записями отделяет хотя бы одна пустая строка или вы хотите ввести то, что еще не вводилось выше. На нашем примере это хорошо видно.
2 — Используем меню.
Давайте рассмотрим небольшой пример, в котором нам нужно постоянно вводить в таблицу одни и те же наименования товаров. Выпишите в столбик данные, которые мы будем использовать (например, названия товаров). В нашем примере — в диапазон G2:G7.
Выделите ячейку таблицы (можно сразу несколько), в которых хотите использовать ввод из заранее определенного перечня. Там мы разместим наш выпадающий список.
Далее в главном меню выберите на вкладке Данные – Проверка… (Data – Validation). Затем укажите пункт Тип данных (Allow) и выберите вариант Список (List). Поставьте курсор в поле Источник (Source) и впишите в него адреса с эталонными значениями элементов — в нашем случае G2:G7. Рекомендуется также использовать здесь абсолютные ссылки (для их установки нажмите клавишу F4).
Бонусом здесь идет возможность задать подсказку и сообщение об ошибке, если автоматически вставленное значение вы захотите изменить вручную. Для этого существуют вкладки Подсказка по вводу (Input Message) и Сообщение об ошибке (Error Alert).
В качестве источника значений для выпадающего списка в Excel можно использовать также и именованный диапазон.
К примеру, диапазону I2:I13, содержащему названия месяцев, можно присвоить наименование «месяцы». Затем имя можно ввести в поле «Источник».
Кроме того, и источник и в виде обычного диапазона ячеек, и именованный диапазон могут находиться на других листах вашей рабочей книги.
Но вы можете и не использовать диапазоны или ссылки, а просто определить возможные варианты прямо в поле «Источник». К примеру, чтобы реализовать в таблице Excel простейший выбор «да – нет», вы можете вписать туда –
Да;Нет
Используйте для разделения значений точку с запятой, запятую, либо другой символ, установленный у вас в качестве разделителя элементов. (Смотрите Панель управления — Часы и регион — Форматы — Дополнительно — Числа.)
3 — Создаем элемент управления.
Вставим на лист новый объект – элемент управления «Поле со списком» с последующей привязкой его к данным на листе Excel. Делаем:
- Откройте вкладку Разработчик (Developer). Если её не видно, то в Excel 2007 нужно нажать кнопку Офис – Параметры – флажок Отображать вкладку Разработчик на ленте (Office Button – Options – Show Developer Tab in the Ribbon) или в версии 2010–2013 и выше щелкните правой кнопкой мыши по ленте, выберите команду Настройка ленты (Customize Ribbon) и включите отображение вкладки Разработчик (Developer) с помощью флажка.
- Найдите нужный значок среди элементов управления (см.рисунок ниже).
Вставив элемент управления на рабочий лист, щелкните по нему правой кнопкой мышки и выберите в появившемся меню пункт «Формат объекта». Далее указываем диапазон ячеек, в котором записаны допустимые значения для ввода. В поле «Связь с ячейкой» укажем, куда именно поместить результат. Важно учитывать, что этим результатом будет не само значение из указанного нами диапазона, а только его порядковый номер.
Но нам ведь нужен не этот номер, а соответствующее ему слово. Используем функцию ИНДЕКС (INDEX в английском варианте). Она позволяет найти в списке значений одно из них соответственно его порядковому номеру. В качестве аргументов ИНДЕКС укажите диапазон ячеек (F5:F11) и адрес с полученным порядковым номером (F2).
Формулу в F3 запишем, как показано на рисунке:
=ИНДЕКС(F5:F11;F2)
Как и в предыдущем способе, здесь возможны ссылки на другие листы, на именованные диапазоны.
Обратите также внимание, что здесь мы не привязаны ни к какой конкретному месту таблицы. Таким списком Excel удобно пользоваться, поскольку его можно свободно «перетаскивать» мышкой в любое удобное место. Для этого на вкладке «Разработчик» нужно активизировать режим конструктора.
4 — Элемент ActiveX
Действуем аналогично предыдущему способу, но выбираем иконку чуть ниже — из раздела «Элементы ActiveX».
Определяем перечень допустимых значений (1). Обратите внимание, что здесь для показа можно выбирать сразу несколько колонок. Затем выбираем адрес, по которому будет вставлена нужная позиция из перечня (2).Указываем количество столбцов, которые будут использованы как исходные данные (3), и номер столбца, из которого будет происходить выбор для вставки на лист (4). Если укажете номер столбца 2, то в А5 будет вставлена не фамилия, а должность. Можно также указать количество строк, которое будет выведено в перечне. По умолчанию — 8. Остальные можно прокручивать мышкой (5).
Этот способ сложнее предыдущего, но зато возвращает сразу значение, а не его номер. Поэтому необходимость в промежуточной ячейке и обработке ее при помощи ИНДЕКС — отпадает. Думаю, таким списком пользоваться гораздо удобнее.
5 — Выпадающий список в Excel с автозаполнением
Задача: Создать перечень, в который будут автоматически добавляться значения из заданного динамического диапазона. Если в любую ячейку этого диапазона будут внесены изменения, то сразу же изменится и набор предлагаемых к выбору значений. Никакие формулы и настройки здесь корректировать не нужно.
Вот как автозаполнение может выглядеть на простом примере:
Способ 1. Укажите заведомо большой источник значений для списка.
Самая простая и несложная хитрость. В начале действуем по обычному алгоритму действий: в меню выбираем на вкладке Данные – Проверка … (Data – Validation). Из перечня Тип данных (Allow) выберите вариант Список (List). Поставьте курсор в поле Источник (Source). Зарезервируем в списке набор с большим запасом: например, до 55-й строки, хотя занято у нас только 7. Обязательно не забудьте поставить галочку в чекбоксе «Игнорировать пустые …». Тогда ваш «резерв» из пустых значений не будет вам мешать.
Действительно самый простой способ, но не слишком удобный. Ведь зарезервированное место может и закончиться…
Конечно, в качестве источника можно указать и весь столбец:
=$A:$A
Но обработка такого большого количества ячеек может несколько замедлить вычисления. Особенно в больших таблицах Excel.
Способ 2. Применяем именованный диапазон.
Именованный диапазон отличается от обычного тем, что ему присвоено определенное наименование. С ним гораздо проще работать, так как не нужно вводить ссылку, а достаточно просто указать его имя. Давайте рассмотрим небольшой пример.
В столбце А находятся имена сотрудников, которые мы будем вводить. Перечень может быть сколь угодно длинным. Нам необходимо, чтобы каждая новая запись включалась в раскрывающийся список без всяких дополнительных действий с нашей стороны.
Выделим имеющийся в нашем распоряжении перечень имен A2:A10. Затем присвоим ему название, заполнив поле «Имя», находящееся левее строки формул.
Так вы присвоите какое-то имя этому диапазону Excel.
Создадим в С2 перечень значений. В качестве источника для него укажем выражение
=имя
Недостатком работы с таким выпадающим списком в Excel является то, что новые значения нельзя просто дописывать в конец используемого перечня. Они останутся за пределами именованного диапазона. Если что-то нужно добавить, то их придется вставлять внутрь диапазона, использовав вставку пустой строки.
Перечень ещё можно отсортировать, чтобы удобно было пользоваться.
Главное неудобство пользования таким списком заключается в том, что используемый нами диапазон — статический. Автоматически его размеры измениться не могут. Согласитесь, не слишком удобный и технологичный способ. Слишком много ручных операций.
А теперь давайте пойдем дальше и посмотрим, как можно работать с динамическим диапазоном, который автоматически подстраивается под вводимые значения.
Способ 3. Выпадающий список на основе «умной» таблицы Excel.
Начиная с 2007 года таблица для Excel — уже не просто набор строк и столбцов. Если вы просто расположите показатели с привычном для нас табличном виде, то он не будет считать их таблицей. Существует специальное форматирование, после чего диапазон начинает вести себя как единое целое, приобретая целый ряд интересных свойств. В частности, он начинает сам отслеживать свои размеры, динамически изменяясь при корректировке данных.
Любой набор значений в таблице может быть таким образом преобразован. Например, A1:A8. Выделите их мышкой. Затем преобразуйте в таблицу, используя меню Главная — Форматировать как таблицу (Home — Format as Table). Укажите, что в первой строке у вас находится название столбца. Это будет «шапка» вашей таблицы. Внешний вид может быть любым: это не более чем внешнее оформление и ни на что больше оно не влияет.
Как уже было сказано выше, «умная» таблица хороша для нас тем, что динамически меняет свои размеры при добавлении в нее информации. Если в строку ниже нее вписать что-либо, то она тут же присоединит к себе её. Таким образом, новые значения можно просто дописывать. К примеру, впишите в A9 слово «кокос», и таблица тут же расширится до 9 строк.
Следовательно, автоматическое обновление набора используемой информации в списке можно организовать, если использовать содержимое какого-либо столбца «умной» таблицы.
Осталось только обозначить ее как источник. Проблема заключается в том, что программа в качестве источника в списке не понимает выражение вида
=Таблица1[Столбец1]
и не считает его формулой. Хотя в обычных выражениях на листе вашей рабочей книги это вполне будет работать. Эта конструкция обозначает ссылку на первый столбец. Но в поле «Источник» она почему-то игнорируется.
Чтобы использовать «умную таблицу» как источник, нам придется пойти на небольшую хитрость и воспользоваться функцией ДВССЫЛ (INDIRECT в английском варианте). Эта функция преобразует текстовую переменную в обычную ссылку.
Формула теперь будет выглядеть следующим образом:
=ДВССЫЛ(«Таблица5[Продукт]»)
Таблица5 — имя, автоматически присвоенное «умной таблице». У вас оно может быть другим. На вкладке меню Конструктор (Design) можно изменить стандартное имя на свое (но без пробелов!). По нему мы сможем потом адресоваться к нашей таблице на любом листе книги.
«Продукт» — название нашего первого и единственного столбца, присвоено по его заголовку.
Не забудьте также заключить все выражение в кавычки, чтобы обозначить его как текстовую переменную.
Теперь если в A9 вы допишете еще один фрукт (например, кокос), то он тут же автоматически появится и в нашем перечне. Аналогично будет, если мы что-то удалим. Задача автоматического увеличения выпадающего списка значений решена.
Надеемся, вы сможете теперь с помощью списков без ошибок вводить часто повторяющиеся данные в таблицу Excel при помощи выпадающего списка.
А вот еще полезная для вас информация:
Что такое выпадающий список
Выпадающий список в Excel (или раскрывающийся список) — это список в ячейке Excel, из которого можно выбрать одно из нескольких заранее заданных значений. Это удобно для быстрого и правильного заполнения данных: не вбивать руками, а просто выбрать. Тут же можно настроить контроль, чтобы пользователи не могли вносить значения, не предусмотренные в списке.
Выпадающий список работает так: выбираете ячейку и справа от нее появляется кнопка со стрелкой вниз (правда, стрелка больше похожа на треугольник).
После нажатия на кнопку списка появится перечень доступных значений, одно из которых можно выбрать.
Значений в списке может быть много, но в обзор помещается до 8 строк. Если значений в списке больше восьми, справа от них появится полоса прокрутки.
Создание выпадающего списка
Чтобы создать выпадающий список, выделите ячейку, где он должен появиться (или группу ячеек) и перейдите на вкладку Данные -> Проверка данных.
В появившемся окне укажите тип данных – Список, поставьте галочку рядом со строкой «Список допустимых значений».
Источником данных может быть:
- Текст – пишется через точку с запятой «;» и без знака равно «=», например
Материалы;Заработная плата;Амортизация
- Ссылки на ячейки:
=$A$1:$A$7
- Именованный диапазон:
=ИмяДиапазона
и т.д.
Связанные выпадающие списки
Связанные выпадающие списки – это списки, в которых выпадающие значения появляются не «просто так», а в зависимости от уже заполненных данных. Так, для выбранной группы появится только список входящих в неё наименований.
Создадим выпадающие списки несколькими способами – для разных таблиц с исходными данными.
Способ 1. Названия групп в заголовках столбцов, в строках – элементы групп.
Способ 2. Названия групп – в первом столбце, элементы групп – во втором столбце.
Способ 1. Связанные выпадающие списки из таблицы с группами в заголовках столбцов
Исходные данные: таблица с названиями групп в заголовках столбцов.
В этом способе используется всего одна простая формула — ДВССЫЛ (правда, непривычная обычным пользователям) и форматированная smart-таблица Excel (иногда их еще называют «умные» таблицы). Зато вы получите взаимозависимые списки и будете пользоваться ими по принципу «сделал и забыл». Не нужно будет переживать о том, что «слетит» диапазон и переделывать всю архитектуру данных. Просто один раз сделаете и будете пользоваться.
Справка:
Форматированная таблица – это таблица, у которой есть свое имя, свойства и структура. Такая таблица представляет из себя именованный «саморасширяющийся» диапазон. При добавлении в нее новых данных границы таблицы автоматически «захватят» новое значение.
У форматированной таблицы множество преимуществ по сравнению с обычной. Поэтому на курсах и семинарах я советую использовать такие таблицы везде, где есть такая возможность.
Создать форматированную таблицу просто: выделите диапазон ячеек и перейдите в меню Главная -> Форматировать как таблицу -> выберите понравившийся вид таблицы. Готово – форматированная таблица создана.
Формула ДВССЫЛ передает значения из ячейки, адрес которой записан в самой формуле в виде текстовой строки.
Например, записываем в ячейке B1 адрес ячейки А1. Формула ДВССЫЛ(B1) «увидит», какой адрес записан в ячейке B1, а результатом вычисления формулы будет текст, записанный в ячейке А1. Эту же формулу можно записать, указав адрес ячейки в кавычках – ДВССЫЛ(«А1»).
С помощью ДВССЫЛ можно обратиться к ячейке по адресу с помощью других формул, например СЦЕПИТЬ, & или ЕСЛИ и т.д. Так, формула на рисунке ДВССЫЛ(B1&C1) обращается к тексту в ячейке А1. После нажатия Enter в ячейке, где вводилась формула ДВССЫЛ(B1&C1) появится значение из ячейки A1, в нашем случае это «текст».
Пошаговая инструкция по созданию связанных выпадающих списков
Шаг 1. Создайте справочник исходных данных в виде форматированной smart-таблицы.
- Выделите таблицу со статьями и преобразуйте ее в smart-таблицу: выберите в меню Главная -> Форматировать как таблицу.
- В появившемся окне обязательно проверьте галочку рядом с надписью «Таблица с заголовками». Если ее нет – поставьте.
- Присвойте созданной таблице имя: выделите любую ячейку таблицы, перейдите на вкладку Конструктор, введите имя — «Источник».
Таблица «Источник» создана. Теперь можно обращаться к таблице и её элементам по имени. Например, название заголовка таблицы будет выглядеть так: =Источник[#Заголовки]
Столбец таблицы: =Источник[Материалы]
Чтобы появилась такая формула, нажмите равно = и выделите столбец, его имя появится в строке формул.
Шаг 2. Создайте выпадающий список с группами.
- Выделите ячейки в столбце «группа».
- Перейдите в меню Данные -> Проверка данных.
- В появившемся окне выберите тип данных — Список, а в строке Источник введите формулу =ДВССЫЛ(«Источник[#Заголовки]»)
Готово! В столбце «группа» появился выпадающий список.
Шаг 3. Создайте выпадающий список со статьями.
- Выделите столбец «статья» в таблице.
- Перейдите в меню Данные -> Проверка данных.
- В появившемся окне выберите тип данных — Список, а в строке Источник введите формулу: =ДВССЫЛ(«Источник[«&$G3&»]»)
В формуле $G3 – это первая ячейка из столбца «группа». Ссылка на столбец «зафиксирована» с помощью знака доллара $, а строка может изменяться.
Готово! В столбце «статья» появляется только список статей, входящих в группу.
Теперь в форматированную smart-таблицу можно добавлять новые группы и статьи. Добавим, например, новый столбец «Прочее», и такая группа сразу же появится в выпадающем списке.
Способ 2. Связанные выпадающие списки из таблицы с группами в первом столбце и элементами — во втором
Исходные данные: таблица с названиями групп в первом столбце, элементами групп – во втором столбце.
На самом деле в сети можно найти несколько вариантов реализации этого способа. Но у них у всех есть один недостаток: такой список нужно «администрировать». Потому что таблица должна быть всегда отсортирована по названиям групп – нельзя, чтобы группы располагались произвольно. Если группы будут идти «как попало», то формула, с помощью которой это всё сделано (СМЕЩ) не сработает, и список будет создаваться с ошибкой. Т.е. пользователю нужно все время сортировать первый столбец или добавлять туда данные в алфавитном порядке. А еще потребуется записывать где-то отдельно сами названия групп и это тоже нужно будет делать «вручную».
Мы придумали, как обойти эту проблему: с помощью сводных таблиц, которые будут за нас упорядочивать данные. Благодаря этому постоянное «администрирование» будет заменено на простую процедуру «обновить».
Для создания списков используем форматированные (умные) таблицы, сводные таблицы, формулы СМЕЩ + ПОИСКПОЗ + СЧЁТЗ, СЧЁТЕСЛИ и диспетчер имен.
Справка:
СМЕЩ выдает ссылку на диапазон ячеек, находящийся в указанном количестве ячеек от исходной. Ссылка определяется с учетом заданного в формуле размера диапазона – числа строк и столбцов. Другими словами, этой формулой вы можете «сказать» Excel-ю на сколько ячеек он должен отступить и какой диапазон «захватить».
Синтаксис формулы СМЕЩ такой:
СМЕЩ(ссылка ; смещ_по_строкам ; смещ_по_столбцам ; [высота] ; [ширина] ), где
- ссылка – ссылка, от которой вычисляется смещение, может быть адресом ячейки или группы ячеек;
- смещ_по_строкам – количество строк, которые требуется отсчитать вверх или вниз от начальной ссылки;
- смещ_по_столбцам – количество столбцов, которые требуется отсчитать влево или вправо от начальной ссылки;
- [высота] – число строк возвращаемой ссылки (необязательный);
- [ширина] – число столбцов возвращаемой ссылки (необязательный).
Ищет нужный нам элемент в диапазоне ячеек и выдает его порядковый номер в диапазоне.
Синтаксис ПОИСКПОЗ такой:
ПОИСКПОЗ( искомое_значение ; просматриваемый_массив ; [тип_сопоставления] )
- искомое_значение – значение, которое ищем. Может быть числом, текстом, логическим значением или ссылкой на ячейку;
- просматриваемый_массив – диапазон ячеек, где будем искать нужное значение;
- [тип_сопоставления] — число -1, 0 или 1, которое показывает, как сравнивать искомое значение с ячейками просматриваемого массива. Не переживайте, если не поняли, когда и что ставить, потому что 90% случаев нужно выбирать ноль.
Подробнее про эту формулу можно посмотреть в видеоинструкции: Какая формула лучше ВПР и работает с несколькими критериями
СЧЁТЗ просто считает количество непустых ячеек в диапазоне.
Почти тот же СУММЕСЛИ, только проще – подсчитывает количество значений, соответствующих определенному условию.
Пошаговая инструкция по созданию списков
Шаг 1. Преобразуйте исходные данные в форматированную smart-таблицу.
- Выделите таблицу со статьями и преобразуйте ее в smart-таблицу: перейдите в меню Главная -> Форматировать как таблицу.
- В появившемся окне обязательно проверьте галочку рядом с надписью «Таблица с заголовками». Если ее нет – поставьте.
- Присвойте таблице имя: на вкладке Конструктор введите имя таблицы — «статьи».
Форматированная таблица «статьи» создана.
Шаг 2. Создайте две сводные таблицы – одну с названиями групп, вторую — со статьями.
Для чего используем сводные таблицы? Во-первых, чтобы вручную не создавать перечень групп, а во-вторых, как уже упоминали выше, чтобы вручную не сортировать справочники статей (что иногда забывают сделать пользователи, а это важно, иначе формула СМЕЩ «срабатывает» с ошибкой). «Ручную» работу сделает вместо нас кнопка «Обновить» в меню Данные — нажимаем ее каждый раз после появления новых статей.
- Создайте первую сводную таблицу с группами статей.
Выделите любую ячейку таблицы с исходными данными, перейдите в меню Вставка -> Сводная таблица. Добавьте сводную таблицу на существующий лист и поместите группы в область строк.
- Создайте вторую сводную таблицу со статьями: меню Вставка -> Сводная таблица. В область строк поместите группы и статьи.
- Форматируем сводную таблицу со статьями и придаем ей вид справочника.
Выделите любую ячейку таблицы, перейдите на вкладку Конструктор -> Макет отчета -> Показать в табличной форме. У нас получится почти та таблица, которая нам нужна, но в ней автоматом появятся промежуточные суммы. Чтобы их отключить, идем: Промежуточные итоги -> Не показывать промежуточные суммы.
- Скройте строку «Общий итог» в обеих таблицах справочников. Перейдите на вкладку Конструктор -> Общие итоги -> Отключить для строк и столбцов.
В итоге получатся два справочника, как на рисунке ниже. Для удобства разместите таблицы рядом на одном листе – с первой строки и в столбцах A, C и D, как на рисунке (это поможет разобраться с формулой СМЕЩ).
Шаг 3. Создайте именованные диапазоны с помощью диспетчера имен.
- Откройте диспетчер имен: в меню Формулы -> Диспетчер имен.
- В появившемся окне нажмите кнопку «Создать».
-
- Введите имя «ГруппыСписок» и формулу, которая будет определять диапазон:
=СМЕЩ($A$1;1;0;СЧЁТЗ($A:$A)-1;1)
- Введите имя «ГруппыСписок» и формулу, которая будет определять диапазон:
Пояснения к формуле:
СМЕЩ ( $A$1 ; 1 ; 0 ; СЧЁТЗ( $A:$A ) – 1 ; 1 ) – определяет адрес ячеек с названиями групп.
-
- $A$1 – это первая ячейка в справочнике групп.
- Следующие цифры 1 ; 0 – это отступ от первой ячейки на 1 строку и 0 столбцов (отступ нужен, потому что в первой ячейке название столбца).
- СЧЁТЗ( $A:$A ) – 1 Считаем число непустых ячеек в столбце А. Вычитаем -1, потому что название столбца не должно быть в списке.
- Последнее число 1 в формуле – это количество столбцов.
Нажмите ОК. Названия листов в формуле появятся сами.
- Точно так же создайте в диспетчере имен список статей.
Введите имя ГруппыСтатей, а для диапазона – формулу:
=СМЕЩ($C$1;ПОИСКПОЗ($G2;$C:$C;0)-1;1;СЧЁТЕСЛИ($C:$C;$G2);1)
Пояснения к формуле:
СМЕЩ ( $C$1 ; ПОИСКПОЗ ( $G2 ; $C:$C ; 0 ) – 1 ; 1 ; СЧЁТЕСЛИ( $C:$C ; $G2 ) ; 1 ) – определяет адрес ячеек с названиями статей из группы с помощью ПОИСКПОЗ, которая ищет группы статей.
- $С$1 – это первая ячейка в столбце с группами.
- ПОИСКПОЗ ( $G2 ; $C:$C ; 0 ) – 1 Определяет, на сколько строк нужно отступить от первой ячейки.ПОИСКПОЗ ищет название группы, выбранной в таблице с данными (столбец $G) среди ячеек справочника (столбец $C). В адресе ячейки $G2 не «закрепляем» номер строки с помощью знака $, чтобы формула работала для каждой ячейки в столбце.
- Следующая цифра 1 – это отступ на 1 столбец вправо, т.е. переходим к столбцу «статьи», откуда нужно брать данные.
- СЧЁТЕСЛИ( $C:$C ; $G2 ) – считаем число ячеек в столбце $C, в которых названия групп такие же, как в столбце с данными. Здесь тоже не «закрепляем» номер строки у ячейки $G2 с помощью знака $.
- Последнее число 1 в формуле – это количество столбцов.
Шаг 4. Создайте выпадающие списки.
Выделите ячейки в столбце «группы», перейдите в меню Данные -> Проверка данных. Задайте тип данных Список, источник =ГруппыСписок.
То же самое – для статей. Тип данных – список, источник =ГруппыСтатьи
Выпадающие списки готовы. Форматированные smart-таблицы позволят «захватить» все данные, а сводные таблицы – избежать ошибок, отсортировать справочник и создать список групп.