Связать несколько списков excel

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

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

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

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

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

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

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

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

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

=ДВССЫЛ(F2)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

linked_dropdowns4.gif

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

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

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

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

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

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

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

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

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

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

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

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

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

​Смотрите также​: Описание и примеры​ от участников форума…​ будет происходить удаление​ ЛИСТЕ (но хотя​

​ смогла разобраться.Скорее всего​ Font.​ ячейка с именем​

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

​ сделать, Excel не​ Тип данных «список»,​ данных выбираем «Список».​ Выпадающего списка. При​ что заполнение диапазона​

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

​A1:A4​​ страну​ в поле​Автор: Антон Андронов​​Этот пример описывает, как​​ древовидной иерархической структуры​ У Nerv есть​​ дубликатов…​​ бы НЕ формулой​

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

  1. ​ а в поле​Для Типа как источник​​ большом количестве элементов​​ ячеек (​
    ​, тогда поле Источник​France​
    ​Refers to​ ​ПРЕДСТАВЬТЕ СИТУАЦИЮ:​
    ​ создать зависимые выпадающие​ ​ данных (с Академика)​
    ​ надстройка, которой я​ ​Перезалил файл-пример… Дублирую​
    ​ массива) здесь .​ ​ блондинок,про которых пишут​

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

  2. ​При вводе первых букв​​Бывает, когда из раскрывающегося​​ новые значения.​​ «Источник» вставьте эту​​ данных мы просто​
  3. ​ имеет смысл сортировать​​A:A​​ будет содержать =лист1!$A$1:$A$4​​, в связанном списке​​(Диапазон) выберите тот,​Зависимые выпадающие списки в Excel​Мы хотим создать​​ списки в Excel.​​ (естественно в файле​
  4. ​ часто пользуюсь -​​ здесь​​Вторая проблема​ в анекдотах​​ с клавиатуры высвечиваются​​ списка необходимо выбрать​
  5. ​Вызываем редактор Visual Basic.​​ формулу и подтвердите​​ указываем диапазон B7:B9.​ список элементов и​Зависимые выпадающие списки в Excel
  6. ​), который содержит элементы,​​Преимущество​​ у нас будут​

​ в котором хранится​

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

  1. ​ в Excel небольшую​​ Вот то, чего​​ пример ближе к​
  2. ​ . В ней​​Юрий М​​возникает, когда внутри​Serge_007​​ подходящие элементы. И​​ сразу несколько элементов.​
  3. ​ Для этого щелкаем​​ ее с помощью​​Для Производителя мы уже​

    ​ использовать дополнительную классификацию​
    ​ ведется без пропусков​

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

  4. ​: наглядность перечня элементов​​ города только из​​ список стран:​

​ табличку, где можно​

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

​ мы попытаемся добиться:​​ реальности).​​ есть файл шаблон,​​: Файл не смотрел.​ уровня частично или​: См. вложение​ это далеко не​ Рассмотрим пути реализации​ правой кнопкой мыши​​ Ctrl + Shift​​ используем формулу, которая​ элементов (т.е. один​​ строк (см. файл​​ и простота его​ Франции.​​=Sheet3!$A$3:$A$5​​ выбрать страну и​Когда пользователь выбирает «Pizza»​Юрий М​ в котором всё​

​ Я делаю следующим​ полностью пересекаются формируемые​
​Stasija​
​ все приятные моменты​

​ задачи.​

office-guru.ru

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

​ по названию листа​​ + Enter. Вот​ подробно описана здесь.​ выпадающий список разбить​ примера, лист Динамический​ модификации. Подход годится​Из этой статьи Вы​Нажмите​ соответствующий ей город.​ из первого раскрывающегося​: Ничего не понял.​ настраивается. Связи осуществляются​ образом: в коллекцию​ списки (например овощи-красные-помидоры​: Serge_007,Огромное человеческое СПАСИБО​ данного инструмента. Здесь​Создаем стандартный список с​ и переходим по​ и вся магия.​

​ Она выглядит так:​ на 2 и​ диапазон).​ для редко изменяющихся​ узнали, как можно​ОК​ При этом с​​ списка…​​ Ну и ладно​ через указанные диапазоны.​ отбираю уникальные, затем​​ и фрукты-красные-яблоки) -​​ Вам!!! Безумно благодарна!!!!​ можно настраивать визуальное​ помощью инструмента «Проверка​

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

​ вкладке «Исходный текст».​Под выпадающим списком понимается​Модель — описание для​ более).​Используем функцию ДВССЫЛ()​ списков.​ сделать простейшие связанные​, чтобы сохранить и​ помощью выпадающих списков,​… второй выпадающий список​ ))​ Может быть что-то​ в укромном местечке​ здесь признак 2​​Формуляр​​ представление информации, указывать​​ данных». Добавляем в​​ Либо одновременно нажимаем​​ содержание в одной​​ этой записи сделаем​Например, чтобы эффективно работать​​Альтернативным способом ссылки на​​Недостатки​​ выпадающие списки в​​ закрыть диалоговое окно.​ необходимо ограничить доступные​​ будет содержать блюда​​Юрий М​ подобное можно было​ (можно на скрытом​

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

​ уровня дублируется для​: Ещё вариант.​ в качестве источника​ исходный код листа​ клавиши Alt +​ ячейке нескольких значений.​ таким же самым​ со списком сотрудников​ перечень элементов, расположенных​: если добавляются новые​ Microsoft Excel. Вы​Имена диапазонам, содержащим города,​ пользователям варианты стран​

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

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

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

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

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

​ столбец источник -​

​ который и использую​​ зависимый выпадающий список​​Stasija​: Всем привет!​

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

​ выше. С его​ параметры).Private Sub Worksheet_Change(ByVal​ появляется определенный перечень.​

​ выпадающий список в​ следует сначала отсортировать​ ДВССЫЛ(). На листе​ на диапазон. Правда,​ использовать его для​​Теперь мы можем создать​​ выбирать. В первой​Примечание переводчика:​ Создали, дальше что?​​ столбец выбора; зависимый​​ для выпадающих списков.​​ по критерию «красные»​​: Спасибо!!!​Задача звучит так:​ помощью справа от​​ Target As Range)​​ Можно выбрать конкретное.​

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

​ Excel. Поскольку Модель​​ в алфавитном порядке.​​ Пример, выделяем диапазон​

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

​ в качестве источника​ решения реальных задач.​ выпадающие списки в​ ячейке мы сделаем​​Лист, на котором​​ Или задача только​​ столбец выбора).​​ Можно было бы​ выдаст либо​​Den_KlimoFF​​ есть 2 столбца​ выпадающего списка будут​ Dim lReply As​Очень удобный инструмент Excel​ зависит как от​​ Затем создать выпадающий​​ ячеек, которые будут​ можно определить сразу​Урок подготовлен для Вас​ тех ячейках, где​ выбор страны, а​ будут создаваться связанные​ в создании?​​Hugo​​ и без промежуточного​И помидоры, И яблоки​: Подскажите пожалуйста, где​ с большом кол-вом​ добавляться выбранные значения.Private​ Long If Target.Cells.Count​ для проверки введенных​ Типа, так и​ список, содержащий буквы​​ содержать выпадающий список,​​ более широкий диапазон,​ командой сайта office-guru.ru​ планировали выбирать данные.​​ во второй будут​​ выпадающие списки, назовем​Jack_Famous​: Я тоже пару​​ диапазона, но есть​​(если сортировка будет​ я ошибся. Не​​ строк (более 1000).​​ Sub Worksheet_Change(ByVal Target​ > 1 Then​ данных. Повысить комфорт​ от Производителя -​ алфавита. Второй выпадающий​ вызываем Проверку данных,​ например,​Источник: http://www.excel-user.com/2011/02/cascading-validation-lists.html​ Выделите ячейку​ доступны только принадлежащие​

​Sheet1​
​: Вообще ничего ил​

​ лет назад споткнулся​ ограничение на длину​ произведена по 2​​ могу найти. Хочу​​В первом столбце​ As Range) On​ Exit Sub If​ работы с данными​​ значит мы будем​​ список должен содержать​ в Источнике указываем​A1:A100​

​Перевел: Антон Андронов​B1​ выбранной стране города.​

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

​, а вспомогательный лист​ шаблон подстановки…?​ на этих 255​ строки.​ уровню), либо​​ сделать выпадающий список​​ значения ячеек -​ Error Resume Next​ Target.Address = «$C$2″​ позволяют возможности выпадающих​

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

​ использовать формулу массива.​ только те фамилии,​ =ДВССЫЛ(«список!A1:A4»).​. Но, тогда выпадающий​Автор: Антон Андронов​(в ней мы​ Думаю, это понятно?​ –​Я создал 6​

​ символах. Выкручивался убиением​Jack_Famous​
​ТОЛЬКО «помидоры»​
​ с картинкой. Делал​

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

office-guru.ru

Выпадающий список в MS EXCEL на основе Проверки данных

​ If Not Intersect(Target,​ Then If IsEmpty(Target)​ списков: подстановка данных,​ Предположим, мы хотим​ которые начинаются с​Недостаток​ список может содержать​При заполнении ячеек данными,​ будем выбирать страну),​Итак, давайте начнём наш​Sheet2​ именованных диапазонов -​ списков при закрытии​: , вот вы​(т.к. овощи первые​ по примеру Serge_007.​ 2-3 значений.​

​ Range(«Е2:Е9»)) Is Nothing​ Then Exit Sub​ отображение данных другого​

​ отобразить в нем​ буквы, выбранной первым​: при переименовании листа​ пустые строки (если,​ часто необходимо ограничить​ откройте вкладку​

​ простой пример с​.​ по 3 на​ книги, и созданием​ всё это говорите,​ по алфавиту), если​Почему то ругается​

​Во втором столбце​ And Target.Cells.Count =​

А. Простейший выпадающий список — ввод элементов списка непосредственно в поле Источник

​ If WorksheetFunction.CountIf(Range(«Деревья»), Target)​ листа или файла,​ легковые модели Fiat.​ списком. Для решения​ – формула перестает​ например, часть элементов​

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

​ нужно сделать так,​ 1 Then Application.EnableEvents​ = 0 Then​ наличие функции поиска​ В первом списке​ такой задачи может​

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

​ сортировка справа-налево.​​ форм.​ чтобы значения были​ = False If​ lReply = MsgBox(«Добавить​ и зависимости.​​ мы выбрали Легковой,​​ быть использована структура​ можно частично обойти​ список только что​ имеется ячейка, куда​Data Validation​
​ зависимый) выпадающий список​
​ в соответствии с​

Б. Ввод элементов списка в диапазон (на том же листе, что и выпадающий список)

​: Именованные диапазоны INPUT_lvl_1,​ вариант как делает​ наполняете заранее созданный​Решением будет являться создание​_Boroda_​ тоже из выпадающего​ Len(Target.Offset(0, 1)) =​ введенное имя «​

​Путь: меню «Данные» -​ во втором -​ Связанный список или​​ см. в статье​​ был создан). Чтобы​ пользователь должен внести​

​(Проверка данных), а​​ в Excel? В​ нашей инструкцией:​ INPUT_lvl_2 и INPUT_lvl_3​ Юрий (правда я​ именованный диапазон. Тут​
​ дополнительного столбца после​​: Смотрите новое имя​ списка, но перечень​ 0 Then Target.Offset(0,​ & _ Target​ инструмент «Проверка данных»​ Fiat.​ Вложенный связанный список.​ Определяем имя листа.​​ пустые строки исчезли​​ название департамента, указав​ затем в выпадающем​ ячейке​Создайте следующие именованные диапазоны​ — это как​ его файл не​ главное слово -​ каждого критерия, кроме​ ййй​

​ значений в выпадающем​ 1) = Target​ & » в​ — вкладка «Параметры».​Мы будем перемещать ячейку​Итак, как сделать два​Ввод элементов списка в​ необходимо сохранить файл.​ где он работает.​ меню выберите​B1​

​ на листе​ раз и есть​ смотрел) — использовать​ макросом, потому что​ первого (причём и​

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

​Jack_Famous​ списке в каждой​ Else Target.End(xlToRight).Offset(0, 1)​ выпадающий список?», vbYesNo​ Тип данных –​ H4 на столько​

​ связанных списка в​ диапазон ячеек, находящегося​Второй недостаток: диапазон источника​ Логично, предварительно создать​

​Data Validation​мы будем выбирать​Sheet2​ ОБЛАСТИ на листе​ диапазоны.​

​ я вне игры)))​ в справочнике, и​: Уважаемые модераторы, не​ строчке долен зависеть​ = Target End​ + vbQuestion) If​ «Список».​ строк, пока не​

​ Excel: категория, подкатегория​
​ в другой книге​ должен располагаться на​ список департаментов организации​​(Проверка данных).​​ страну, а в​
​:​

  • ​ ввода, в которых​​The_Prist​​Юрий М​
  • ​ в листе выбора),​ спешите удалять или​
  • ​ от того, что​ If Target.ClearContents Application.EnableEvents​ lReply = vbYes​

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

  • ​ том же листе,​
  • ​ и позволить пользователю​Откроется диалоговое окно​ ячейке​

​Имя диапазона Адрес​
​ будут создаваться выпадающие​: Универсальные списки с​: Ну а у​ в котором будут​ игнорировать этот пост​​ было выбрано в​​ = True End​ Then Range(«Деревья»).Cells(Range(«Деревья»).Rows.Count +​ будет складываться выпадающий​ легкового Fiatа. Поэтому​

​ нижнего уровня. Своими​ с элементами выпадающего​ что и выпадающий​ лишь выбирать значения​Data Validation​B2​ диапазона​ списки.​

​ зависимостями я дела​ меня с формулами​ сцепляться все предыдущие​​ — он является​​ той же строчке​ If End Sub​ 1, 1) =​ список, можно разными​ в колонке Тип​

​ словами в данном​

​ списка в другую​ список, т.к. для​ из этого списка.​(Проверка вводимых значений).​– принадлежащий ей​Food​А диапазоны LIST_lvl_1,​ в свое время,​ туго ))​ критерии. Соответственно, выбор​ НЕ тысячным клоном​

​ в первом столбце.​​Чтобы выбранные значения показывались​ Target End If​ способами:​ мы должны иметь​ случае нижний уровень​ книгу (например, в​

​ правил Проверки данных нельзя​ Этот подход поможет​Мы хотим дать пользователю​

​ город, как на​A1:A3​ LIST_lvl_2 и LIST_lvl_3​ но через форму​Jack_Famous​ следующего уровня будет​

  • ​ себе подобных, НО​ Как это сделать?​
  • ​ снизу, вставляем другой​ End If End​Вручную через «точку-с-запятой» в​ значение Легковой, а​
  • ​ — это «подподкатегория»​ книгу Источник.xlsx), то​ использовать ссылки на​
  • ​ ускорить процесс ввода​ на выбор список​ примере:​Pizza​

​ — области на​ пользователя. Выдернуть из​: а какой-нибудь примерчик​ осуществляться по сцепке​ попыткой и просьбой​Нашел только способ​ код обработчика.Private Sub​ If End Sub​ поле «Источник».​ в колонке Производитель​ если она вообще​ нужно сделать следующее:​ другие листы или​ и уменьшить количество​

​ вариантов, поэтому в​Для начала нужно создать​В1:В4​ листе СПИСКОВ,​ проекта возможности нет​

​ с таким макросом​
​ всех предыдущих.​ о реализации ДЕЙСТВИТЕЛЬНО​ создания зависимых выпадающих​ Worksheet_Change(ByVal Target As​Сохраняем, установив тип файла​Ввести значения заранее. А​ должен быть Fiat.​ существует… Но для​в книге Источник.xlsx создайте​ книги (это справедливо​ опечаток.​ поле​ базу данных. На​Pancakes​ИЗ КОТОРЫХ​ — слишком большой.​ не найдётся?​Это, на мой​ УНИВЕРСАЛЬНОГО, решающего БОЛЬШИНСТВО​ списков для варианта,​ Range) On Error​ «с поддержкой макросов».​ в качестве источника​ Если бы мы​ лучшего понимания данного​ необходимый перечень элементов;​

​ для EXCEL 2007​​Выпадающий список можно создать​
​Allow​ втором листе я​С1:С2​формируются выпадающие списки.​ Стандартные списки -​Jack_Famous​ взгляд, основные проблемы,​ вопросов по данной​ когда имеем дело​ Resume Next If​Переходим на лист со​

​ указать диапазон ячеек​ использовали промежуточный столбец​ обучающего материала, предположим,​в книге Источник.xlsx диапазону​ и более ранних).​ с помощью Проверки​(Тип данных) выберите​ занес список стран,​Chinese​Юрий М​ это самоубийство, по-любому​

​: , а с​ которые возникают при​ популярной теме (кроме​ с небольшим кол-вом​ Not Intersect(Target, Range(«Н2:К2»))​ списком. Вкладка «Разработчик»​ со списком.​ (это было бы​ что существует.​ ячеек содержащему перечень​Избавимся сначала от второго​ данных ​List​ которые хочу дать​D1:D3​: Начал делать на​ где-то да произойдет​ этим ничего нельзя​

excel2.ru

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

​ формировании ЗНАЧИТЕЛЬНЫХ каскадных​ того сюда всегда​ строк (несколько штук).​ Is Nothing And​ — «Код» -​Назначить имя для диапазона​ отличным решением, но​В любом случае, с​ элементов присвойте Имя,​ недостатка – разместим​или с помощью элемента​(Список). Это активирует​ пользователям на выбор​

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

​Выделите ячейку​ форме. Давайте сначала​ казус.​ поделать ?​ выпадающих списков. Решение​ можно будет отправить​ https://www.planetaexcel.ru/techniques/1/38/​ Target.Cells.Count = 1​ «Макросы». Сочетание клавиш​ значений и в​ хотели бы показать​ самого начала напишем,​ например СписокВнеш;​ перечень элементов выпадающего​ управления формы Поле​ поле​ в первом раскрывающемся​B1​ сделаем на форме?​Jack_Famous​

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

​Юрий М​

  • ​ вижу только макросами​ по этой теме).​
  • ​Но для большого​ Then Application.EnableEvents =​
  • ​ для быстрого вызова​ поле источник вписать​

​ вам что-то более​ что этот учебный​откройте книгу, в которой​

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

​ списка на другом​ со списком (см.​Source​

  1. ​ списке, а в​
  2. ​на листе​
  3. ​ — с неё​

​: , , спасибо​: А что там​ и UDF, т.к.​Начну с формы​ кол-ва строк этот​ False If Len(Target.Offset(1,​ – Alt +​ это имя.​ крутое ;-) ),​ материал является продолжением​ предполагается разместить ячейки​ листе.​ статью Выпадающий (раскрывающийся)​

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

​(Источник), где необходимо​ соседнем столбце указал​Sheet1​ ведь можно вводить​ вам большое…видимо, буду​ делать? Всё же​ набор и сложность​ ведения. Предлагаю в​ способ не работает,​ 0)) = 0​ F8. Выбираем нужное​Любой из вариантов даст​ то мы бы​ материала: Как сделать​ с выпадающим списком;​

​В правилах Проверки данных (также​

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

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

​ расписано. А пример​ формул и списков,​ качестве платформы создания​

​ т.к. растягивания значения​ Then Target.Offset(1, 0)​ имя. Нажимаем «Выполнить».​ такой результат.​

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

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

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

​ элемента управления формы).​ со странами. Введите​ соответствует одному из​На вкладке​Jack_Famous​ что выше 2х​ сейчас поищу. Или​ чтобы ЭТО реализовать,​ таких списков -​ ячеек вниз отсылает​ = Target Else​Когда мы введем в​​ данных: Легковой Fiat.​ в ячейках Excel,​

​ вызовите инструмент Проверка​ форматирования) нельзя впрямую​В этой статье создадим​ в этом поле​ списков городов. Списки​Data​: Как вам удобно,​ уровней))) В ближайшем​ создам небольшой.​ отобьёт любое желание.​ «умные» таблицы, как​ нас в итоге​ Target.End(xlDown).Offset(1, 0) =​ пустую ячейку выпадающего​Необходимо сделать раскрывающийся список​ Однако у нас​ в котором подробно​ данных, в поле​ указать ссылку на​ Выпадающий список с​ «=Country» и жмите​ городов располагаются правее​(Данные) нажмите кнопку​ Юрий… Форма -​ будущем займусь изучением​Jack_Famous​ Чтобы не требовалось​ учит Николай Павлов,​ к одной и​ Target End If​ списка новое наименование,​ со значениями из​ нет такого столбца,​

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

​ОК​

​ в столбцах​Data Validation​ ещё лучше​ VBA, так что​: Проблема там такая…Короче,​ сортировки, сводных (желательно​ т.к. они сразу​ той же ячейке​ Target.ClearContents Application.EnableEvents =​ появится сообщение: «Добавить​

​ динамического диапазона. Если​ но мы можем​ способ создания одного​При работе с перечнем​ (см. Файл примера):​ (Данные/ Работа с​. Теперь нам нужно​D​(Проверка данных).​Юрий М​ своё видение решения​ когда книгу открываю​ даже обойтись без​ решают множество проблем​

​ из первого столбца.​

​ True End If​ введенное имя баобаб​

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

Ctrl + Shift + Enter.

​ в следующий раз​ создания вручную формульных​

​ по работе с​ Т.е. чтобы решить​ End Sub​ в выпадающий список?».​ имеющийся диапазон (добавляются​ лету», другими словами,​ Рекомендуем вам ознакомиться​ другой книге, файл​ содержать Выпадающий список,​ с типом данных​ список, чтобы пользователи​F​Data Validation​

exceltable.com

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

​ Дальше (по кнопке)​ только) проблемы, естественно​ — всё слетает​ диапазонов). Как вариант​ базой данных и​ задачу, надо для​Чтобы выбираемые значения отображались​

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

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

​ что должно происходить?​ выложу на Планете​ (((​ файл-шаблон с таблицами​ являются универсальными практически​

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

​ каждой ячейки из​ в одной ячейке,​ еще одна строка​ они автоматически отражаются​

  1. ​ Набирая эту формулу,​ что здесь подробно​Ввод значений.
  2. ​ открыт и находиться​ Пример,​Выпадающий список можно сформировать​ Мы поместим этот​Проверка вводимых значений.
  3. ​H​Выберите​P.S. Столбец-сцепка (D)​P.S.: неужели дубликаты в​

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

​Юрий М​ и макросами (заполнил​

​ для любых потребностей​

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

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

  1. ​ по разному.​ раскрывающийся список в​. Так, например, рядом​List​Форматировать как таблицу.
  2. ​ в коде не​ списке не убить​: А я об​ таблицы на нужное​ (сами растягиваются, сами​ от которой она​ препинания, применим такой​Когда значения для выпадающего​Выделяем диапазон для выпадающего​ представить, что такой​ как сделать тот​ папке, иначе необходимо​ элементов разместим на​Выпадающий список.
  3. ​Самым простым способом создания​ ячейку​ с​(Список) из раскрывающегося​ задействован, но если​ на лету? )))))​ этом говорил в​ количество уровней и​

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

​ формируют именованые диапазоны​ зависит, указывать вручную,​ модуль.​

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

​ списка расположены на​ списка. В главном​

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

​ промежуточный столбец существует,​

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

​ другой связанный выпадающий​ указывать полный путь​ другом листе (на​

​ Выпадающего списка является​B2​France​ списка​ его удалить физически,​Hugo​ #4 — сам​

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

  1. ​ вперёд) Файл с​ полей и т.д.).​ что для 1000​Private Sub Worksheet_Change(ByVal​ другом листе или​Создание имени.
  2. ​ меню находим инструмент​ и вы увидите,​ список :-) А​ к файлу. Вообще​ листе Список в​
  3. ​ ввод элементов списка​. А теперь внимание​стоит индекс​Allow​ то нужно будет​: Можно и в​ в своё время​Сообщение об ошибке.
  4. ​ примерами прикреплён. Слежу​ Наиболее близкие к​ строк сделать нереально.​ Target As Range)​ в другой книге,​ «Форматировать как таблицу».​ что будет проще​ это то, что​ ссылок на другие​ файле примера).​ непосредственно в поле​ – фокус! Нам​2​(Тип данных).​ немного подправить код.​ одном уровне нарваться​ столкнулся этой проблемой​ за темой…​ желаемому примеры найдены​AlexM​On Error Resume​ стандартный способ не​Откроются стили. Выбираем любой.​ ;-)​ мы хотим получить:​ листы лучше избегать​Для создания выпадающего списка,​ Источник инструмента Проверка​ нужно проверить содержимое​, который соответствует списку​Поместите курсор в поле​Jack_Famous​ на строку >255,​
  5. ​ ))​Юрий​Сообщение об ошибке.
  6. ​ здесь, за авторством​: Прочтите правила форума.​ Next​ работает. Решить задачу​ Для решения нашей​Для определения положения Легковой​Итак, мы имеем:​ или использовать Личную​

Макрос.

​ элементы которого расположены​ данных.​ ячейки с названием​ городов​Source​: Я ,короче, офигел…​

​ это от уровня​См. пример. Заполнение​: Написано много ,​

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

​ ber$erk​Чтобы вам могли​If Not Intersect(Target,​ можно с помощью​ задачи дизайн не​ Fiat, мы, конечно,​тип автомобиля: Легковой, Фургон​ книгу макросов Personal.xlsx​ на другом листе,​Предположим, в ячейке​ страны (ячейка B1),​

  1. ​2​(Источник) и введите​Браво, Юрий, браво!!!​
  2. ​ не зависит.​ первого списка уникальными​ я понял нужно​

​аж в начале 2013​ помочь сообщение должно​ Range(«C2:C5»)) Is Nothing​ функции ДВССЫЛ: она​ имеет значения. Наличие​ будем использовать функцию​ и Внедорожник (Категория)​ или Надстройки.​ можно использовать два​B1​

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

​ чтобы получить индекс​

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

​. Позже Вы увидите,​ «=Food».​А то,что столбец-сцепка​Юрий М​ происходит при активации​ вариант сортировки уникальных​ года​ быть оформлено по​

  1. ​ And Target.Cells.Count =​ сформирует правильную ссылку​ заголовка (шапки) важно.​Список диапазонов.
  2. ​ ПОИСКПОЗ. Смотрите:​производитель: Fiat, Volkswagen i​Если нет желания присваивать​ подхода. Один основан​необходимо создать выпадающий​Таблица со списком.
  3. ​ соответствующий базе данных​ как этот индекс​Нажмите​ не задействован это​: Покажите небольшой файл​ первого листа. Второй​ значений и сортировка​: и здесь (первый​ правилам форума.​ 1 Then​ на внешний источник​ В нашем примере​ПОИСКПОЗ(B4&C4;F5:F39&G5:G39;0)​Второй раскрывающийся список.

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

    ​ Suzuki (Подкатегория) и​ имя диапазону в​ на использовании Именованного​ список для ввода​ с городами. Если​

    1. ​ будет использован.​ОК​ вообще супер (то​ пример.ЦитатаJack_Famous написал:​ список будет заполняться​В прилагаемом файле​ вариант очень узко​denisfad​Application.EnableEvents = False​ информации.​ это ячейка А1​Вышеописанное означает, что мы​модель: … немножечко их​ файле Источник.xlsx, то​ диапазона, другой –​ единиц измерений. Выделим​ пользователь выберет​Если Вы работаете в​.​ есть код ищет​Может быть что-то​ при выборе данных​ вариант с формой​ заточен, а второй​: Не понял, а​newVal = Target​
    2. ​Делаем активной ячейку, куда​ со словом «Деревья».​ хотим знать позицию​ есть :-) (Подподкатегория)​ формулу нужно изменить​ функции ДВССЫЛ().​ ячейку​Portugal​ Excel 2010, то​Результат:​ сам не по​ подобное можно было​ в первом выпадающем​Jack_Famous​ отказывается работать с​ что я не​Application.Undo​ хотим поместить раскрывающийся​ То есть нужно​
    3. ​ Легкового Fiatа (отсюда​В то же время​ на =ДВССЫЛ(«[Источник.xlsx]лист1!$A$1:$A$4»)​Используем именованный диапазон​B1​
      ​, то мы должны​ можете создать лист-источник​
      ​Теперь выделите ячейку​ ОДНОМУ, а по​
      ​ бы сделать и​ списке. Столбцы (листы)​: Юрий. не понял,​ большим количеством данных​
      ​ так написал? Какое​
      ​oldval = Target​
      ​ список.​
      ​ выбрать стиль таблицы​
      ​ и связь B4&C4).​ мы имеем следующие​СОВЕТ:​
      ​Создадим Именованный диапазон Список_элементов,​и вызовем Проверку​ обратиться к базе​
      ​ в отдельной рабочей​
      ​Е1​
      ​ ВСЕМ предыдущим). Нет,​
      ​ для выпадающих (связь:​ с динамическими диапазонами​
      ​ что ваша форма​
      ​ (хотя очень крутой​
      ​ правило нарушил?​

    ​If Len(oldval) <>​Открываем параметры проверки данных.​ со строкой заголовка.​ Где? В нашем​ данные:​Если на листе​

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

    1. ​ содержащий перечень элементов​ данных.​ с индексом​ книге. Если же​.​ правда — я​Вставить ActiveX.
    2. ​ столбец источник -​ можно скрыть. Комментарии​ делает… Мечта хозяйки​ и универсальный)…​Che79​ 0 And oldval​Элемент ActiveX.
    3. ​ В поле «Источник»​ Получаем следующий вид​Свойства ActiveX.
    4. ​ воображаемом вспомогательном столбце,​Этот список должен быть​ много ячеек с​ выпадающего списка (ячейки​Если в поле Источник​3​ у Вас версия​Выберите​

    ​ прям поражён. И​

    ​ столбец выбора; зависимый​ писать жутко лень​ это просто название​Короче говоря, создавать​: Правила форума.​ <> newVal Then​ вводим формулу: =ДВССЫЛ(“[Список1.xlsx]Лист1!$A$1:$A$9”).​ диапазона:​ то есть: F5:F39&G5:G39.​ отсортирован в следующей​

    exceltable.com

Связанные (зависимые) выпадающие списки в двух столбцах (Формулы/Formulas)

​ правилами Проверки данных,​​A1:A4​
​ указать через точку​, в которой хранятся​ Excel 2003 года,​List​
​ это полчаса… Однако,​ столбец выбора).И уточните​ )​ листа со сводной​
​ 2х уровневые выпадающие​Чтобы попытаться помочь,​Target = Target​Имя файла, из которого​Ставим курсор в ячейку,​ И здесь самая​ очередности:​ то можно использовать​на листе Список).​ с запятой единицы​ названия городов Португалии.​ и Вы планируете​(Список) из выпадающего​
​ VBA определённо стоит​ этот момент -​Jack_Famous​ таблицей, которая формирует​ списки мы умеем​ от Вас нужен​ & «,» &​
​ берется информация для​ где будет находиться​ большая сложность всей​Тип.​ инструмент Выделение группы​Для этого:​ измерения шт;кг;кв.м;куб.м, то​ Мы воспользуемся функцией​ использовать именованный диапазон,​ списка​ изучать​ в каком виде​: , разберусь (во​ ПЕРВЫЙ диапазон уникальных​ вот по этой​ файл-пример (не более​ newVal​

​ списка, заключено в​​ выпадающий список. Открываем​
​ формулы.​Производитель.​ ячеек (Главная/ Найти​выделяем​

​ выбор будет ограничен​​ВПР​ то значения должны​Allow​1. Я добавил​

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

excelworld.ru

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

​Остальное уже проще, а​​Модель.​
​ и выделить/ Выделение​А1:А4​ этими четырьмя значениями.​(VLOOKUP) для поиска​
​ находиться в той​(Тип данных).​
​ ещё 2 уровня​ выбор.​
​ на это) -​ для первого столбца)​ сделать так, чтобы​ структурой, максимально приближенной​
​Target = newVal​ файл должен быть​ данных» (выше описан​ наибольшего внимания требует​Он может быть любой​
​ группы ячеек). Опция​,​

​Теперь смотрим, что получилось.​​ значения из ячейки​ же книге, можно​

​Поместите курсор в поле​​ — не могли​Jack_Famous​ спасибо большое! Завтра​ — не зацикливайтесь​ в каком-либо диапазоне​ к реальной.​End If​ открыт. Если книга​ путь). В поле​ функция СЧЁТЕСЛИМН, которая​ длины. Что еще​

​ Проверка данных этого​​нажимаем Формулы/ Определенные имена/​

​ Выделим ячейку​​B1​ на другом листе.​

​Source​​ бы вы распространить​
​: , вообще конечно​ отпишусь​

​ на нём, -​​ НА ЛИСТЕ отсутствовали​

​Stasija​​If Len(newVal) =​ с нужными значениями​ «Источник» прописываем такую​ проверяет, сколько есть​ важно: стоит добавить​ инструмента позволяет выделить​
​ Присвоить имя​B1​в таблице с​

​Мы будем использовать именованные​​(Источник) и введите:​ код на новые​

excelworld.ru

Многоуровневые (зависимые, каскадные) выпадающие списки без дубликатов

​ можно (фантазия человека​​Jack_Famous​ это моя вина​ дубликаты можно, предварительно​: Добрый день,уважаемые профессионалы.​ 0 Then Target.ClearContents​ находится в другой​ функцию:​ Легковых Fiatов. В​ к нему еще​ ячейки, для которых​в поле Имя вводим​. При выделении ячейки​ названиями стран. После​ диапазоны и сделаем​
​=INDIRECT($B$1)​ условия, т.к. я​ безгранична). Но как​: , посмотрел, проверил.​ (не мог удержаться​ сделав сводную на​Столкнулась с проблемой​Application.EnableEvents = True​ папке, нужно указывать​Протестируем. Вот наша таблица​ частности, она проверяет,​ два меньших списка,​ проводится проверка допустимости​ Список_элементов, в поле​ справа от ячейки​ того как индекс​ так, чтобы эти​=ДВССЫЛ($B$1)​ не совсем понял,​​ по мне, так​ Штука чудная! Дубликаты​​ от примитивного юморка).​ основе необходимого списка​ при создании зависимых​End If​ путь полностью.​ со списком на​ сколько раз в​
​ необходимых для Типа​ данных (заданная с​ Область выбираем Книга;​ появляется квадратная кнопка​ будет известен, мы​ связанные выпадающие списки​Нажмите​ как он меняется​ эти связаные списки​ удаляет, ячейки очищает,​Самое первоочередное, что​ и ссылаться уже​ выпадающих списков.Есть 2​End Sub​Возьмем три именованных диапазона:​
​ одном листе:​ списке встречаются такие​ и Производителя, то​ помощью команды Данные/​Теперь на листе Пример,​ со стрелкой для​ выберем список, который​ работали во всех​ОК​ в каждом блоке​ для того и​ списки формирует и,​ я не могу​
​ на неё (автообновлять​​ листа:​​Не забываем менять диапазоны​Это обязательное условие. Выше​Добавим в таблицу новое​ записи, которые в​ есть к категории​ Работа с данными/​ выделим диапазон ячеек,​ выбора элементов из​ станет источником данных​ версиях Excel. Следующий​.​ (смог только удалить​
​ нужны, чтобы с​​ самое главное, очень​ сделать сам -​ можно простым макросом)​1-Товары (Список брендов,артикулов,названий​ на «свои». Списки​ описано, как сделать​ значение «елка».​ столбце F5:F39 имеют​ (первый список) и​ Проверка данных). При​ которые будут содержать​ выпадающего списка.​​ для нашего второго​​ шаг – создать​Результат:​ столбец сцепки и​​ каждым этапом сужать​​ шустро работает (увеличил​ это УДАЛИТЬ ПОВТОРЫ​ (найдено здесь )​ и цен)​
​ создаем классическим способом.​ обычный список именованным​Теперь удалим значение «береза».​ значение Легковой, а​ подкатегории (второй список).​ выборе переключателя Всех​ Выпадающий список.​Недостатки​ выпадающего списка. Для​ именованные диапазоны для​Пояснение:​ заменить 5 на​
​ область поиска. В​ диапазоны в 20​ (ДУБЛИКАТЫ) В ДИНАМИЧЕСКИ​Для удобства объяснения введу​2-Заказы (Ведется таблица​ А всю остальную​ диапазоном (с помощью​Осуществить задуманное нам помогла​ в столбце G5:G39​ Эти дополнительные списки​ будут выделены все​вызываем Проверку данных;​этого подхода: элементы​ этого напишем такую​ наших списков. На​Функция​ 4 в коде​ случае с длинными​ раз — время​ СОЗДАВАЕМОМ ДИАПАЗОНЕ для​ такие понятия для​ продаж)​ работу будут делать​

​ «Диспетчера имен»). Помним,​​ «умная таблица», которая​ — Fiat. Функция​ списки выглядят следующим​ такие ячейки. При​:cry:
​в поле Источник вводим​ списка легко потерять​;)

​ формулу:​​ вкладке​INDIRECT​)​ именами можно просто​ работы также незаметно)!​ выпадающего списка. То​ примера: 1 (первый)​В листе «Товары»​ макросы.​ что имя не​ легка «расширяется», меняется.​ выглядит так:​ образом:​ выборе опции Этих​
​ ссылку на созданное​ (например, удалив строку​=CHOOSE(VLOOKUP(B1,Sheet3!$A$3:$B$5,2,FALSE),England,France,Portugal)​Formulas​(ДВССЫЛ) возвращает ссылку,​2. Можно ли​ пользовать форму от​К сожалению, как​ есть я создаю​ уровень списков -​ еле-еле смогла создать​
​На вкладке «Разработчик» находим​ может содержать пробелов​Теперь сделаем так, чтобы​СЧЁТЕСЛИМН(F5:F39;B4;G5:G39;C4)​Дело в том, что​ же выделяются только​ имя: =Список_элементов.​ или столбец, содержащие​=ВЫБОР(ВПР(B1;Sheet3!$A$3:$B$5;2;ЛОЖЬ);England;France;Portugal)​(Формулы) есть команда​ заданную текстовым значением.​ вставлять значения из​ Nerv — в​ и в 90%​ зависимый выпадающий список​ исходный начальный диапазон​ зависимые списки (не​ инструмент «Вставить» –​ и знаков препинания.​
​ можно было вводить​А вся формула для​

​ эти списки не​​ те ячейки, для​Примечание​ ячейку​Что же делает эта​Name Manager​ Например, пользователь выбирает​ формы в,​ ней отличный контекстный​ всех подобных случаев,​ через СМЕЩ+ИНДЕКС+ПОИСКПОЗ из​ (овощи и фрукты);​ сильна в экселе).​ «ActiveX». Здесь нам​Создадим первый выпадающий список,​ новые значения прямо​

​ раскрывающегося списка это:​​ должны иметь дубликатов​ которых установлены те​Если предполагается, что​B1​ формула? Она ищет​(Диспетчер имён). Нажав​ «Chinese» из первого​новую строку​ поиск ))) но​

​ изменить под универсальные​​ приёмов .​ 2 уровень (помидоры​А вот чтобы​

​ нужна кнопка «Поле​​ куда войдут названия​ в ячейку с​Если вы планируете использовать​:)

​ записей по Типу​​ же правила проверки​ перечень элементов будет​); не удобно вводить​

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

​Но если во​​ и огрурцы -​ эти списки выводились​ со списком» (ориентируемся​ диапазонов.​ этим списком. И​

​ эту формулу в​​ и Производителю, находящихся​ данных, что и​ дополняться, то можно​ большое количество элементов.​B1​ диалоговое окно​
​ функция​ в соответствующие поля?​ смысла такие делать.​ смогу​ втором (условно) столбце​ овощи, а апельсины​ в листе «Заказы»…Увы….Несколько​ на всплывающие подсказки).​Когда поставили курсор в​ данные автоматически добавлялись​ нескольких ячейках -​ в списке Моделей.​

​ для активной ячейки.​​ сразу выделить диапазон​ Подход годится для​в списке стран​Name Manager​INDIRECT​;)

​Если сможете, оставьте​​ Сейчас изучаю нормализацию​. Дело в том,​ значения повторяются несколько​ и мандарины -фрукты;​ дней пыталась вывести,читая​Щелкаем по значку –​ поле «Источник», переходим​ в диапазон.​ не забудьте обозначить​:idea:​ Вы можете создать​Примечание​ большего размера, например,​ маленьких (3-5 значений)​ и возвращает соответствующий​(Диспетчер имён).​:cry:​(ДВССЫЛ) возвращает ссылку​ в коде комментарии…​ данных, реляционные базы​ что источник для​ раз (потому что​ 3 уровень -​ советы с форума.​ становится активным «Режим​ на лист и​Сформируем именованный диапазон. Путь:​ ячейки как абсолютные​ их с помощью​:​А1:А10​ неизменных списков.​ индекс, который затем​Нажмите кнопку​ на именованный диапазон​ И буду я​ данных и т.д.​ всех выпадающих должен​ служат источником для​ соответственно дальше по​Буду очень благодарна,если​ конструктора». Рисуем курсором​ выделяем попеременно нужные​ «Формулы» — «Диспетчер​ ссылки! И еще​ инструмента «Удалить дубликаты»​Если выпадающий список​. Однако, в этом​

​Преимущество​​ использует функция​New​Chinese​ на выходных потихоньку​ так вот там,​ быть один, в​ выпадающего списка следующего​
​ уточнениям и т.д.)​ кто-то сможет помочь.​ (он становится «крестиком»)​ ячейки.​ имен» — «Создать».​ СУПЕРВАЖНО, чтобы вся​

​ (например, это показано​​ содержит более 25-30​ случае Выпадающий список​: быстрота создания списка.​CHOOSE​(Создать), чтобы добавить​, который находится на​ вникать и тестить))))​ (как и Николай​ одной «умной» таблице,​ уровня), то и​С​

​Serge_007​​ небольшой прямоугольник –​Теперь создадим второй раскрывающийся​ Вводим уникальное название​ запись была подтверждена​ в этом видео​ значений, то работать​ может содержать пустые​Элементы для выпадающего списка​(ВЫБОР), чтобы выбрать​ новый именованный диапазон.​ листе​;)
​Юрий М​ Павлов) рекомендуется дробить​ на одном листе​

​ выпадающем списке их​​первой и ОСНОВНОЙ проблемой​: Поиском не пробовали​ место будущего списка.​ список. В нем​ диапазона – ОК.​

​ комбинацией клавиш Ctrl​​ продолжительностью около 2​ с ним становится​
​ строки.​ можно разместить в​ 1-й, 2-й или​ Откроется диалоговое окно​Sheet2​: Давайте продолжим уже​ таблицу по смысловым​ и иметь классическую​ будет несколько. Вот​я столкнулся, когда​ пользоваться?​

​Жмем «Свойства» – открывается​​ должны отражаться те​Создаем раскрывающийся список в​ + Shift +​ минут). Когда мы​ неудобно. Выпадающий список​Избавиться от пустых строк​ диапазоне на листе​ 3-й именованный диапазон.​New Name​. В результате второй​ вечером — сейчас​ группам, чтобы впоследствии​ древовидную структуру -​ не знаю, как​ искал способ удалять​Stasija​ перечень настроек.​ слова, которые соответствуют​ любой ячейке. Как​ Enter !!!​ это сделали, тогда​ одновременно отображает только​ и учесть новые​ EXCEL, а затем​Вот так будет выглядеть​(Создание имени).​ раскрывающийся список состоит​ нужно отлучиться.​ с каждой такой​ это делается для​
​ это убрать… Лучше,​

​ дубликаты ИЗ ФОРМИРУЕМОГО​​: Serge_007, извините. Просто​Вписываем диапазон в строку​ выбранному в первом​ это сделать, уже​Скачать зависимые выпадающие списки​ …​

​ 8 элементов, а​​ элементы перечня позволяет​ в поле Источник​ наш второй раскрывающийся​

​В поле​​ из блюд китайской​Jack_Famous​ группой (поле, столбец)​ удобства редактирования и​ конечно, что-то дописать​ (СМЕЩ+ИНДЕКС+ПОИСКПОЗ) выпадающего списка,​

​ на Вашем форуме​​ ListFillRange (руками). Ячейку,​ списке названию. Если​:cry:​ известно. Источник –​ в Excel​​ чтобы увидеть остальные,​

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

​Для ячеек, которые должны​​ нужно пользоваться полосой​ этого при создании​ указать ссылку на​В результате мы получим​(Имя) введите имя​Урок подготовлен для Вас​

​ Юрий! Мне тут​​ (фильтровать, сортировать и​ данных для выпадающих​ которой он формируется,​:)

​ ЛЕТУ (в то​​ темы, связанные с​ выбранное значение –​ «дуб» и т.д.​
​Снимаем галочки на вкладках​ Поэтому, когда вы​ стать раскрывающимися списками​ прокрутки, что не​ Имени Список_элементов в​ этот диапазон.​

​ два связанных (или​​Country​8-0​ командой сайта office-guru.ru​8)​ кода разбирать до​ т.д.)​ списков. Есть идея,​ но сойдёт и​ же время есть​ данной тематикой, но,​ в строку LinkedCell.​ Вводим в поле​ «Сообщение для ввода»,​ перейдете в меню​ в меню «Данные»​ всегда удобно.​:idea:
​ поле Диапазон необходимо​Предположим, что элементы списка​ зависимых) выпадающих списка.​для нашего первого​Источник: http://www.excel-easy.com/examples/dependent-drop-down-lists.html​ Рождества)))) Спасибо ОГРОМНОЕ​, сейчас сделаю…​ но, опять же,​ вариант с созданием​ способ удаления дубликатов​ к моему большому​ Для изменения шрифта​ «Источник» функцию вида​:D​ «Сообщение об ошибке».​
​ «Данные», «Проверка данных»​ выбираем «Проверка данных»​В EXCEL не предусмотрена​​ записать формулу =СМЕЩ(Список!$A$1;;;СЧЁТЗ(Список!$A:$A))​​ шт;кг;кв.м;куб.м введены в​ Если мы выбираем​
​ именованного диапазона, а​Перевел: Антон Андронов​ за помощь!​Jack_Famous​ реализация зависит только​

​ временного столбца, где​​ из списка НА​ сожалению,так и не​ и размера –​

​ =ДВССЫЛ(E3). E3 –​​ Если этого не​ и выберите как​ и как тип​ регулировка размера шрифта​Использование функции СЧЁТЗ() предполагает,​

planetaexcel.ru

​ ячейки диапазона​

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

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

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

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

Итак, мы имеем:

  • тип автомобиля: Легковой, Фургон и Внедорожник (Категория)
  • производитель: Fiat, Volkswagen i Suzuki (Подкатегория) и
  • модель: … немножечко их есть :-) (Подподкатегория)

В то же время мы имеем следующие данные:

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

Этот список должен быть отсортирован в следующей очередности:

  1. Тип.
  2. Производитель.
  3. Модель.

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

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

Дело в том, что эти списки не должны иметь дубликатов записей по Типу и Производителю, находящихся в списке Моделей. Вы можете создать их с помощью инструмента «Удалить дубликаты» (например, это показано в этом видео продолжительностью около 2 минут). Когда мы это сделали, тогда …



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

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

Для Типа как источник данных мы просто указываем диапазон B7:B9.

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

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

используем формулу.

Модель — описание для этой записи сделаем таким же самым образом.

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

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

Мы будем перемещать ячейку H4 на столько строк, пока не найдем позицию первого легкового Fiatа. Поэтому в колонке Тип мы должны иметь значение Легковой, а в колонке Производитель должен быть Fiat. Если бы мы использовали промежуточный столбец (это было бы отличным решением, но хотели бы показать вам что-то более крутое ;-), то мы бы искали комбинацию этих данных: Легковой Fiat. Однако у нас нет такого столбца, но мы можем создать его «на лету», другими словами, используя формулу. Набирая эту формулу, вы можете себе представить, что такой промежуточный столбец существует, и вы увидите, что будет проще ;-)

Для определения положения Легковой Fiat, мы, конечно, будем использовать функцию ПОИСКПОЗ. Смотрите:

ПОИСКПОЗ(B4&C4;F5:F39&G5:G39;0)

Вышеописанное означает, что мы хотим знать позицию Легкового Fiatа (отсюда и связь B4&C4). Где? В нашем воображаемом вспомогательном столбце, то есть: F5:F39&G5:G39. И здесь самая большая сложность всей формулы.

Остальное уже проще, а наибольшего внимания требует функция СЧЁТЕСЛИМН, которая проверяет, сколько есть Легковых Fiatов. В частности, она проверяет, сколько раз в списке встречаются такие записи, которые в столбце F5:F39 имеют значение Легковой, а в столбце G5:G39 — Fiat. Функция выглядит так:

СЧЁТЕСЛИМН(F5:F39;B4;G5:G39;C4)

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

Если вы планируете использовать эту формулу в нескольких ячейках — не забудьте обозначить ячейки как абсолютные ссылки!

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

  1. Создаем новое имя. Для этого выберите инструмент: «ФОРМУЛЫ»-«Определенные имена»-«Диспетчер имен»-«Создать».
  2. Диспетчер имен.

  3. При создании имени в поле «Имя:» вводим слово – модель, а в поле «Диапазон:» вводим выше указанную формулу и нажимаем на всех открытых диалоговых окнах ОК:
  4. Модель и формула.

  5. Перейдите на ячейку D4 чтобы там создать выпадающий список, в котором на этот раз в поле ввода «Источник:» следует указать ссылку на выше созданное имя с формулой =модель.
  6. Источник ссылка на имя.

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

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

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

Все таблицы в книге указываются в списках полей сводной таблицы и Power View.

Браузер не поддерживает видео.

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

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

  2. Вы можете отформатировать данные как таблицу или импортировать внешние данные в виде таблицы на новом.

  3. Присвойте каждой из таблиц понятное имя: На вкладке Работа с таблицами щелкните Конструктор > Имя таблицы и введите имя.

  4. Убедитесь, что столбец в одной из таблиц имеет уникальные значения без дубликатов. Excel может создавать связи только в том случае, если один столбец содержит уникальные значения.

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

  5. Щелкните Данные> Отношения.

Если команда Отношения недоступна, значит книга содержит только одну таблицу.

  1. В окне Управление связями нажмите кнопку Создать.

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

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

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

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

  6. Нажмите кнопку ОК.

Дополнительные сведения о связях между таблицами в Excel

  • Примечания о связях

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

  • «Могут потребоваться связи между таблицами»

    • Шаг 1. Определите, какие таблицы указать в связи

    • Шаг 2. Найдите столбцы, которые могут быть использованы для создания пути от одной таблицы к другой

Примечания о связях

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

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

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

  • Типы данных в двух столбцах должны быть совместимы. Подробные сведения см. в статье Типы данных в моделях данных.

  • Другие способы создания связей могут оказаться более понятными, особенно если неизвестно, какие столбцы использовать. Дополнительные сведения см. в статье Создание связи в представлении диаграммы в Power Pivot.

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

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

  1. Запустите надстройку Power Pivot в Microsoft Excel и откройте окно Power Pivot.

  2. Нажмите Получение внешних данных > Из службы данных > Из Microsoft Azure Marketplace. В мастере импорта таблиц откроется домашняя страница Microsoft Azure Marketplace.

  3. В разделе Price (Цена) нажмите Free (Бесплатно).

  4. В разделе Category (Категория) нажмите Science & Statistics (Наука и статистика).

  5. Найдите DateStream и нажмите кнопку Subscribe (Подписаться).

  6. Введите свои учетные данные Майкрософт и нажмите Sign in (Вход). Откроется окно предварительного просмотра данных.

  7. Прокрутите вниз и нажмите Select Query (Запрос на выборку).

  8. Нажмите кнопку Далее.

  9. Чтобы импортировать данные, выберите BasicCalendarUS и нажмите Готово. При быстром подключении к Интернету импорт займет около минуты. После выполнения вы увидите отчет о состоянии перемещения 73 414 строк. Нажмите Закрыть.

  10. Чтобы импортировать второй набор данных, нажмите Получение внешних данных > Из службы данных > Из Microsoft Azure Marketplace.

  11. В разделе Type (Тип) нажмите Data Данные).

  12. В разделе Price (Цена) нажмите Free (Бесплатно).

  13. Найдите US Air Carrier Flight Delays и нажмите Select (Выбрать).

  14. Прокрутите вниз и нажмите Select Query (Запрос на выборку).

  15. Нажмите кнопку Далее.

  16. Нажмите Готово для импорта данных. При быстром подключении к Интернету импорт займет около 15 минут. После выполнения вы увидите отчет о состоянии перемещения 2 427 284 строк. Нажмите Закрыть. Теперь у вас есть две таблицы в модели данных. Чтобы связать их, нужны совместимые столбцы в каждой таблице.

  17. Убедитесь, что значения в столбце DateKey в таблице BasicCalendarUS указаны в формате 01.01.2012 00:00:00. В таблице On_Time_Performance также есть столбец даты и времени FlightDate, значения которого указаны в том же формате: 01.01.2012 00:00:00. Два столбца содержат совпадающие данные одинакового типа и по крайней мере один из столбцов (DateKey) содержит только уникальные значения. В следующих действиях вы будете использовать эти столбцы, чтобы связать таблицы.

  18. В окне Power Pivot нажмите Сводная таблица, чтобы создать сводную таблицу на новом или существующем листе.

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

  20. Разверните таблицу BasicCalendarUS и нажмите MonthInCalendar, чтобы добавить его в область строк.

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

  22. В списке полей, в разделе «Могут потребоваться связи между таблицами» нажмите Создать.

  23. В поле «Связанная таблица» выберите On_Time_Performance, а в поле «Связанный столбец (первичный ключ)» — FlightDate.

  24. В поле «Таблица» выберитеBasicCalendarUS, а в поле «Столбец (чужой)» — DateKey. Нажмите ОК для создания связи.

  25. Обратите внимание, что время задержки в настоящее время отличается для каждого месяца.

  26. В таблице BasicCalendarUS перетащите YearKey в область строк над пунктом MonthInCalendar.

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

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

  1. Таблица BasicCalendarUS должна быть открыта в окне Power Pivot.

  2. В главной таблице нажмите Сортировка по столбцу.

  3. В поле «Сортировать» выберите MonthInCalendar.

  4. В поле «По» выберите MonthOfYear.

Сводная таблица теперь сортирует каждую комбинацию «месяц и год» (октябрь 2011, ноябрь 2011) по номеру месяца в году (10, 11). Изменить порядок сортировки несложно, потому что канал DateStream предоставляет все необходимые столбцы для работы этого сценария. Если вы используете другую таблицу логики операций со временем, ваши действия будут другими.

«Могут потребоваться связи между таблицами»

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

Кнопка "Создать", отображаемая при необходимости создать связь

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

Шаг 1. Определите, какие таблицы указать в связи

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

Представление диаграммы, в котором показаны несвязанные таблицы

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

Шаг 2. Найдите столбцы, которые могут быть использованы для создания пути от одной таблице к другой

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

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

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

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

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

Подробнее о связях таблиц см. в статье Связи между таблицами в модели данных.

К началу страницы

Содержание

  1. Связанный список в EXCEL
  2. Выпадающий список в Excel с помощью инструментов или макросов
  3. Создание раскрывающегося списка
  4. Выпадающий список в Excel с подстановкой данных
  5. Выпадающий список в Excel с данными с другого листа/файла
  6. Как сделать зависимые выпадающие списки
  7. Выбор нескольких значений из выпадающего списка Excel
  8. Выпадающий список с поиском

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

history 21 января 2013 г.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Источник

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  1. Сформируем именованный диапазон. Путь: «Формулы» — «Диспетчер имен» — «Создать». Вводим уникальное название диапазона – ОК.
  2. Создаем раскрывающийся список в любой ячейке. Как это сделать, уже известно. Источник – имя диапазона: =деревья.
  3. Снимаем галочки на вкладках «Сообщение для ввода», «Сообщение об ошибке». Если этого не сделать, Excel не позволит нам вводить новые значения.
  4. Вызываем редактор Visual Basic. Для этого щелкаем правой кнопкой мыши по названию листа и переходим по вкладке «Исходный текст». Либо одновременно нажимаем клавиши Alt + F11. Копируем код (только вставьте свои параметры).
  5. Сохраняем, установив тип файла «с поддержкой макросов».
  6. Переходим на лист со списком. Вкладка «Разработчик» — «Код» — «Макросы». Сочетание клавиш для быстрого вызова – Alt + F8. Выбираем нужное имя. Нажимаем «Выполнить».

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

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

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

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

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

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

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

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

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

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

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

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

  1. Создаем стандартный список с помощью инструмента «Проверка данных». Добавляем в исходный код листа готовый макрос. Как это делать, описано выше. С его помощью справа от выпадающего списка будут добавляться выбранные значения.
  2. Чтобы выбранные значения показывались снизу, вставляем другой код обработчика.
  3. Чтобы выбираемые значения отображались в одной ячейке, разделенные любым знаком препинания, применим такой модуль.

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

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

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

  1. На вкладке «Разработчик» находим инструмент «Вставить» – «ActiveX». Здесь нам нужна кнопка «Поле со списком» (ориентируемся на всплывающие подсказки).
  2. Щелкаем по значку – становится активным «Режим конструктора». Рисуем курсором (он становится «крестиком») небольшой прямоугольник – место будущего списка.
  3. Жмем «Свойства» – открывается перечень настроек.
  4. Вписываем диапазон в строку ListFillRange (руками). Ячейку, куда будет выводиться выбранное значение – в строку LinkedCell. Для изменения шрифта и размера – Font.

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

Источник

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