Выпадающий список с наполнением
Задача: создать в ячейке выпадающий список для удобного ввода информации. Варианты для списка должны браться из заданного динамического диапазона, т.е. если завтра в него внесут изменения — например, удалят ненужные элементы или допишут еще несколько новых — они должны автоматически отразиться в выпадающем списке:
Способ 1. Если у вас Excel 2007 или новее
Простой и удобный способ почти без формул. Использует новую возможность последних версий Microsoft Excel начиная с 2007 версии — «Умные Таблицы». Суть его в том, что любой диапазон можно выделить и отформатировать как Таблицу. Тогда он превращается, упрощенно говоря, в «резиновый», то есть сам начинает отслеживать изменения своих размеров, автоматически растягиваясь-сжимаясь при добавлении-удалении в него данных.
Выделите диапазон вариантов для выпадающего списка (A1:A5 в нашем примере выше) и на Главной (Home) вкладке нажмите кнопку Форматировать как таблицу (Home — Format as Table). Дизайн можно выбрать любой — это роли не играет:
Обратите внимание на то, что таблица должна иметь строку заголовка (в нашем случае это А1 со словом Сотрудники). Первая ячейка играет роль «шапки» и содержит название столбца. На появившейся после превращения в Таблицу вкладке Конструктор (Design) можно изменить стандартное имя таблицы на свое (без пробелов!). По этому имени мы сможем потом адресоваться к таблице на любом листе этой книги:
Теперь выделите ячейки где вы хотите создать выпадающие списки (в нашем примере выше — это D2) и выберите в старых версиях Excel в меню Данные — Проверка (Data — Validation), а в новых нажмите кнопку Проверка данных (Data Validation) на вкладке Данные (Data). В открывшемся окне на вкладке Параметры (Settings) выберите вариант Список (List) и введите в поле Источник (Source) вот такую формулу:
=ДВССЫЛ(«Таблица1[Сотрудники]»)
=INDIRECT(«Таблица1[Сотрудники]»)
Смысл этой формулы прост. Выражение Таблица1[Сотрудники] — это ссылка на столбец с данными для списка из нашей умной таблицы. Но проблема в том, что Excel почему-то не хочет понимать прямых ссылок в поле Источник (Source), т.е. нельзя написать в поле Источник выражение вида =Таблица1[Сотрудники]. Поэтому мы идем на тактическую хитрость — вводим ссылку как текст (в кавычках) и используем функцию ДВССЫЛ (INDIRECT), которая преобразовывает текстовую ссылку в настоящую, живую.
Осталось только нажать на ОК. Если теперь дописать к нашей таблице новые элементы, то они будут автоматически в нее включены, а значит — добавятся к нашему выпадающему списку. С удалением — то же самое.
Если вам лень возиться с вводом формулы ДВССЫЛ, то можно чуть упростить процесс. После создания умной таблицы просто выделите мышью диапазон с элементами для выпадающего списка (A2:A5) и введите в поле адреса имя для этого диапазона (без пробелов), например Стажеры, и нажмите на Enter:
Фактически, этим мы создаем именованный динамический диапазон, который ссылается на данные из нашей умной таблицы. Теперь имя этого диапазона можно ввести в окне создания выпадающего списка в поле Источник (Source):
Способ 2. Если у вас Excel 2003 или старше
В старых версиях Excel до 2007 года не было замечательных «умных таблиц», поэтому придется их имитировать своими силами. Это можно сделать с помощью именованного диапазона и функции СМЕЩ (OFFSET), которая умеет выдавать ссылку на динамический диапазон заданного размера.
Откройте меню Вставка — Имя — Присвоить (Insert — Name — Define) или нажмите Ctrl+F3. В открывшемся окне нажмите кнопку Добавить (New), введите имя диапазона (любое, но без пробелов и начинающееся с буквы, например — Люди) и в поле Ссылка (Reference) введите вот такую формулу:
=СМЕЩ(A2;0;0;СЧЁТЗ(A2:A100);1)
=OFFSET(A2;0;0;COUNTA(A2:A100);1)
Функция СЧЁТЗ (COUNTA) подсчитывает количество непустых ячеек в столбце с фамилиями, т.е. количество строк в диапазоне для выпадающего списка. Функция СМЕЩ (OFFSET) формирует ссылку на диапазон с нужными нам именами и использует следующие аргументы:
- A2 — начальная ячейка
- 0 — сдвиг начальной ячейки по вертикали вниз на заданное количество строк
- 0 — сдвиг начальной ячейки по горизонтали вправо на заданное количество столбцов
- СЧЁТЗ(A2:A100) — размер получаемого на выходе диапазона по вертикали, т.е. столько строк, сколько у нас занятых ячеек в списке
- 1 — размер получаемого на выходе диапазона по горизонтали, т.е. один столбец
Теперь выделите ячейки, где вы хотите создать выпадающие списки, и выберите в старых версиях Excel в меню Данные — Проверка (Data — Validation). В открывшемся окне на вкладке Параметры (Settings) выберите вариант Список (List) и введите в поле Источник (Source) вот такую формулу:
=Люди
После нажатия на ОК ваш динамический список в выделенных ячейках готов к работе.
Ссылки по теме
- 4 способа создания выпадающих списков в ячейках листа Excel
- Связанные выпадающие списки
- Быстрое создание выпадающих списков с помощью надстройки PLEX
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.
Смотрите также не закреплять шапкуВыделяем любую ячейку в End Sub вводим формулу: =ДВССЫЛ(“[Список1.xlsx]Лист1!$A$1:$A$9”). новые значения прямо таблицы, использовать графические специальную адресацию: «февраль», снимая остальные формулу, которая несколько списков. «Форматировать как таблицу». форматированием. Это несоответствие тогда в формулу Е1:Е4 (окрашен в в Excel
В строке «Источник»Сделать выпадающий список в диапазона как раньше таблице и наЧтобы выбираемые значения отображалисьИмя файла, из которого в ячейку с элементы. Если вдруг«=Покупатели[#Эта строка]» будет ссылаться галочки. Таким образом, отличается от стандартнойСначала создаем умную таблицу
Откроется меню, в котором появилось вследствие того, перед адресом ячейки желтый цвет). Вставляем. Ещё один способ — указываем название Excel
(в Excel 2010 вкладке в одной ячейке, берется информация для этим списком. И не понравится созданная на текущую строку. будут показаны только для данного типа с заголовком, в будет предложено выбрать
что пользователь перевыбрал напишем название листа
выпадающий список как сделать раскрывающиеся списки, нашего диапазона, нопросто. Можно сделать там еще иГлавная (Home) разделенные любым знаком списка, заключено в данные автоматически добавлялись умная таблица, ее«=Покупатели[#Данные]» будет ссылаться на покупатели, сделавшие покупки электронной таблицы. Она котором идет только
стиль таблицы - значение в Уровне1 и поставим восклицательный обычно. Нажимаем «Проверка смотрите в статье перед названием ставим связанные выпадающие списки автофильтр):разворачиваем список
препинания, применим такой квадратные скобки. Этот в диапазон. всегда можно преобразовать данные, не учитывая в феврале. Остальные имеет вид [@[{Название заголовок и перечисление выбираем любой, который с Европа на знак. данных», выбираем «Список». «Связанные выпадающие списки знак «равно». Получилось в ExcelВключив флажокФорматировать как таблицу (Format модуль. файл должен бытьСформируем именованный диапазон. Путь: в обычную. строки заголовков. при этом никуда столбца}]]арифметические действия.
компонентов выпадающего списка, по душе. Америка, а значениеКак еще можно В диалоговом окне в Excel». так.
.Показать итоговую строку (Total as table)Private Sub Worksheet_Change(ByVal открыт. Если книга «Формулы» — «ДиспетчерАвтор: Александр Сорокин«=Покупатели[#Заголовки]» будет ссылаться на не исчезнут, еслиЗдесь {Название столбца} - затем создаем этотДалее возникнет диалоговое окно, на следующем уровне, применить готовые шаблоны
«Проверка вводимых значений»Способ, который мыНажимаем «ОК». Все,Когда список во row): Target As Range) с нужными значениями имен» — «Создать».Под выпадающим списком понимается
заголовки столбцов таблицы, опять нажать стрелку конкретное название столбца,
список, как описано в котором будет естественно, автоматически не таблиц Excel, читайте в строку «Источник» сейчас рассмотрим удобен список вставлен. Теперь втором столбце зависитна вкладкеВ раскрывшемся списке стилейOn Error Resume находится в другой Вводим уникальное название содержание в одной расположенные в первой в заголовке «Месяц» в котором осуществляется выше, не выделяя предложено уточнить диапазон поменялось. Это ограничение в статье «Готовые вставляем скопированную формулу
тем, что при копируем эту ячейку
от значения вКонструктор (Design) выбираем любой вариант Next папке, нужно указывать
диапазона – ОК. ячейке нескольких значений. строке таблицы. и отметить галочками расчет, например «Сумма, заголовок. После этого ячеек, входящих в обходится в статье таблицы Excel». шапки таблицы. Но
добавлении строк или перетаскиванием вниз, если ячейке первого столбца.мы получаем автоматическую заливки на нашIf Not Intersect(Target,
excel-office.ru
Как сделать связанные выпадающие списки в Excel легко.
путь полностью.Создаем раскрывающийся список в Когда пользователь щелкает «=Покупатели[#Итоги]» будет ссылаться на все месяцы, то руб.», арифметические действия подтверждаем сделанные изменения. данную таблицу, и Связанный список вКак сделать связанный
формулу нужно доработать. столбцов в таблицу, нужен такой выпадающий Как сделать строку итогов в вкус и цвет Range(«C2:C5»)) Is NothingВозьмем три именованных диапазона: любой ячейке. Как
по стрелочке справа, итоговую строку (в снова на экране — это алгебраические Это позволит постоянно если таблица содержит MS EXCEL на выпадающий список, фамилии
Допишем впереди – все диапазоны в список по всему
в Excel зависимые раскрывающиеся конце и в окне And Target.Cells.Count =Это обязательное условие. Выше это сделать, уже появляется определенный перечень. случае ее наличия появятся все покупатели. выражения, принятые в пополнять список новыми заголовки («шапку»), то основе элемента управления
в котором можно ДВССЫЛ, поставим кавычки
таблице увеличиваются автоматически, столбцу. списки,Таблицы подтверждения выделенного диапазона 1 Then описано, как сделать известно. Источник – Можно выбрать конкретное. в умной таблице).После того как умная формулах Excel и,
значениями. необходимо поставить галочку формы. выбирать по алфавиту, и круглые скобки. не нужно ихТаким способом можночитайте в статьес возможностью выбора жмемApplication.EnableEvents = False обычный список именованным имя диапазона: =деревья.
Очень удобный инструмент Excel«=Покупатели[#Все]» будет ссылаться на таблица в Excel в случае необходимости,Представленный способ является одним около надписи «ТаблицаДля функционирования всего этого
смотрите в статье Получилась такая формула.
настраивать.сделать несвязанные многоуровневые выпадающие «Связанные выпадающие списки функции (сумма, среднее,ОКnewVal = Target диапазоном (с помощьюСнимаем галочки на вкладках для проверки введенных всю таблицу, включая
создана, приложение присваивает числа, @ - из секретов эффективной с заголовками». используется несколько однотипных «Связанный выпадающий список=ДВССЫЛ(«Товар[#Заголовки]»)Остается просто вносить списки в Excel в Excel». количество и т.д.)и получаем наApplication.Undo «Диспетчера имен»). Помним, «Сообщение для ввода», данных. Повысить комфорт все вышеперечисленные формулы. ей название в показывает, что данные
работы с умными
После чего необходимо подтвердить
имен. в Excel поНажимаем «ОК». нужные данные в. Например, у насМожно сделать так, по каждому столбцу: выходе примерно следующее:oldval = Target что имя не «Сообщение об ошибке». работы с даннымиТак, например, подсчитать суммы соответствии с порядком
будут взяты из таблицами в Excel. выполненные действия путемОднотипность имен и формул алфавиту».
Так как в самой таблицу и все. такая таблица с что в выпадающемК данным вВ результате после такогоIf Len(oldval) <> может содержать пробелов Если этого не
позволяют возможности выпадающих покупок можно вводом ее следования (если той же строки.Если следовать инструкции, то нажатия на кнопку в ячейках позволяетВ статье Многоуровневый связанный таблице с данными Остальное сделает сама данными. списке сначала будутТаблице преобразования диапазона в 0 And oldval
и знаков препинания. сделать, Excel не списков: подстановка данных, формулы =СУММ(Покупатели[#Все]). это первая таблицаДанные формулы можно вводить получится умная таблица «ОК» или нажав быстро изменять количество список рассмотрен вариант диапазоны динамичные, то
таблица — изменитВ ячейках строки 1 выпадать буквы алфавита,можно адресоваться, «умную» <> newVal ThenСоздадим первый выпадающий список, позволит нам вводить отображение данных другогоПрокрутка столбцов таблицы при будет присвоено название как обычно принято определенного стиля, но Enter.
уровней (правда, куда
3-х уровневого списка.
если мы добавим диапазоны и внесет мы сделаем ряд нажав на выбаннуюиспользуя имена отдельных ееТаблицуTarget = Target
куда войдут названия новые значения. листа или файла, ее немаленьком размере «Таблица1» и т.
в Excel, кликая в меню онаВ результате таблица изменится уж больше?). Элементы каждого уровня столбец, это слово новые данные в выпадающих списков. Нажимаем
excel-office.ru
Многоуровневый связанный список в MS EXCEL на основе таблицы
букву выйдет список элементов(с большой буквы!) & «,» & диапазонов.Вызываем редактор Visual Basic. наличие функции поиска не требует фиксации д.). на соответствующие поля представляется символически и в соответствии сСущественным недостатком этого подхода в нем располагаются автоматически увеличится диапазон
соответствующие выпадающие списки. на ячейку А1 слов, фамилий на. Например, для суммирования имеем следующие радости newValКогда поставили курсор в Для этого щелкаем и зависимости. областей, поскольку названияДля того чтобы узнать и только проставляя не всегда может выбранным стилем и является, то, что на отдельных листах.
таблицы и словоУ нас есть и, через функцию эту букву. Об всех чисел в (кроме приятного дизайна):
Else поле «Источник», переходим правой кнопкой мышиПуть: меню «Данные» - столбцов таблицы перемещаются название таблицы, ставим необходимые функции, все понравиться, как она будет включать фильтрацию
в отличие от Это не всегда отобразится в выпадающем
такие данные на «Проверка данных» устанавливаем этом читайте в столбце НДС можноСозданнаяTarget = newVal на лист и
по названию листа инструмент «Проверка данных» в заголовки столбцов курсор в любую необходимые для формулы выглядит на экране. по каждой колонке. Многоуровневого списка, где удобно: при создании списке. Например, добавим
листе. выпадающий список. Диалоговое статье «Связанный выпадающий воспользоваться формулойТаблицаEnd If выделяем попеременно нужные и переходим по — вкладка «Параметры». конкретного листа конкретной ее ячейку, переходим вспомогательные значки в Поэтому в случаеТаким образом, без особых заполнялась целая таблица 4-х и 5-и слово «плащ». ПолучилосьСделаем из этих данных окно заполнили так.
список в Excel=СУММ(Таблица1[НДС])получает имя
If Len(newVal) = ячейки. вкладке «Исходный текст». Тип данных – книги.
в таб «Конструктор», этом случае будут необходимости стиль можно усилий можно достаточно (по строкам), уровневых списков -
так. форматированную таблицу Excel.Нажимаем «ОК». Копируем
по алфавиту» тут.вместоТаблица1,2,3 0 Then Target.ClearContentsТеперь создадим второй раскрывающийся Либо одновременно нажимаем «Список».В Excel 2010 появилась группа «Свойства» и
excel2.ru
Умные таблицы Excel: секреты эффективной работы и особенности
добавлены автоматически. поменять. легко создать умнуюздесь заполняется только одна резко увеличивается числоВторой уровень связанных выпадающих Делаем активной любую формулу вниз поМожно сделать выпадающий=СУММ(F2:F200)и т.д. которое,Application.EnableEvents = True
Понятие об умных таблицах
список. В нем клавиши Alt +Ввести значения, из которых возможность при работе там находим параметрПри нажатии на EnterКак сделать умную таблицу таблицу в Excel. (!) группа связанного
задействованных столбцов. В списков в ячейку этих данных. столбцу, если нужно. список в Excelи не думать можно изменить наEnd If должны отражаться те F11. Копируем код будет складываться выпадающий с умными таблицами
«Имя таблицы», который произойдет пересчет в в Excel сОдним из секретов повышения списка. этой статье сформируем
Создание умной таблицы в Excel
Excel. Заходим на закладку Затем, нажимаем на без дополнительного списка уже про размеры более адекватное наEnd Sub слова, которые соответствуют (только вставьте свои список, можно разными создавать срезы. Они
можно редактировать, для данном столбце во новым стилем? Для скорости ввода данныхПримечание
связанный список изСначала выберем из «Главная», в разделе ячейку В1, устанавливаем с данными. Смотрите таблицы, количество строк вкладкеНе забываем менять диапазоны выбранному в первом параметры).Private Sub Worksheet_Change(ByVal
способами: представляют собой автофильтр чего нужно поместить всех ячейках таблицы. этого не нужно
в электронную таблицу. Пример будет работать единой таблицы. выпадающего списка в «Стили» нажимаем кнопку
выпадающий список по статью «Как сделать и корректность диапазоновКонструктор (Design)
Выпадающие списки
на «свои». Списки списке названию. Если Target As Range)Вручную через «точку-с-запятой» в отдельного столбца, представленный
на «Таблица1» курсор,В случае необходимости подсчета выделять всю таблицу, является использование выпадающих начиная с версииЭта статья является обзорной, ячейке Е1, чтобы
«Форматировать как таблицу» такому же принципу, выпадающий список в выделения. Также возможно. Это имя можно создаем классическим способом. «Деревья», то «граб»,
Dim lReply As поле «Источник». в виде элемента выделить и ввести
в конце таблицы достаточно поместить курсор списков. MS EXCEL 2007, а не подробным эта ячейка не и выбираем первый только в строке Excel без списка». использовать еще следующие
использовать в любых А всю остальную «дуб» и т.д. Long If Target.Cells.Count
Ввести значения заранее. А графики. Переходим в новое название, после итогов на табе в виде черногоСначала создаем перечень данных, т.к. функция ЕСЛИОШИБКА() будет работать изложением, т.к. пользователи, была пустой. шаблон таблицы. «Источник» указываем диапазонКогда создаем сложные операторы (предполагается, что формулах, выпадающих списках работу будут делать Вводим в поле > 1 Then
в качестве источника таб «Конструктор», группа чего нажать Enter. «Конструктор» в группе прямоугольника на любую которые должны быть начиная с этой
которые решаться наЗатем, как вОбязательно ставим галочку у столбца К. таблицы, анкеты, листы таблица имеет стандартное и функциях, например макросы. «Источник» функцию вида Exit Sub If указать диапазон ячеек команд «Инструменты», нажимаемЭто название может быть
«Параметры стилей таблиц» ячейку умной таблицы. в выпадающем списке версии, чтобы обойти
Изменяем стиль умной таблицы
создание подобных «монстров» первом случае, ставим строки «Таблица сИ так делаем опроса, другие документы, имя в качестве источникаНа вкладке «Разработчик» находим =ДВССЫЛ(E3). E3 – Target.Address = «$C$2″ со списком.
«Вставить срез», в использовано в формулах, ставим галочку наПосле этого перемещаемся в на другом листе это ограничение читайте должны хорошо разбираться в пустой ячейке заголовками».
все выпадающие списки. можно в ячейкиТаблица1 данных для сводной инструмент «Вставить» – ячейка с именем Then If IsEmpty(Target)Назначить имя для диапазона
диалоговом окне выбираем встроенных функциях, выпадающих опцию «Строка итогов», таб «Конструктор», группа
приложения или в статью про функцию ЕСЛИОШИБКА(). в Выпадающих списках (не в таблице)Нажимаем «ОК». Получилась такая
Параметры стилей
Получилась такая таблица. установить выпадающий список.): таблицы или массива «ActiveX». Здесь нам первого диапазона. Then Exit Sub
значений и в названия столбцов (или списках. что позволит подсчитать «Стили таблиц». Если стороне от данныхВ последние годы появились (Dropdown List using знак «равно». Выделяем таблица.Диапазон списков можно Это — когда=Таблица1[#Все]
Использование формул
поиска для функции нужна кнопка «ПолеБывает, когда из раскрывающегося If WorksheetFunction.CountIf(Range(«Деревья»), Target) поле источник вписать одного столбца), изНазвание таблицы может быть итоговые суммы по не хватает представленных для печати.
новые «умные» технологии: Data Validation), создании данные столбца АСама эта таблица уже сделать динамическим. Смотрите щелкаем мышкой на- ссылка на ВПР (VLOOKUP). со списком» (ориентируемся списка необходимо выбрать = 0 Then
это имя. которых будет сформирован использовано при применении тем столбцам, где стилей, кликаем наВыделяем ячейку, в которой умные телефоны, умные имен (Names), динамических (без названия столбца). имеет имя. Смотрим в статье «Чтобы ячейку и появляется всю таблицу, включая
Созданная один раз на всплывающие подсказки). сразу несколько элементов. lReply = MsgBox(«ДобавитьЛюбой из вариантов даст срез. При необходимости функций ВПР, ГПР. были введены формулы. «Дополнительные параметры» и будет находиться данный
дома, холодильники, чехлы диапазонах (Dynamic Named У нас - в Диспетчере имен.
размер таблицы Excel список, из которого заголовки столбцов, данныеТаблицаЩелкаем по значку – Рассмотрим пути реализации введенное имя « такой результат. фильтрации таблицы выбираем Например, мы хотимЕсли вы заинтересовались данной
видим всю палитру список, идем на для телефонов, телевизоры Ranges), формулах массива это диапазон А2:А4.Название этой таблицы можно менялся автоматически». Назовем выбираем нужный вариант и строку итоговавтоматически подстраивается в размерах становится активным «Режим задачи. & _ Target необходимую категорию или
Автофильтрация
найти, кто у информацией, хорошо владеете стилей. вкладку «Данные», выбираем и т. д. (Array Formula), понимать,Копируем формулу выделенного поменять. Нажимаем на динамический диапазон ячеек слов. Например, так.=Таблица1[#Данные]при добавлении или конструктора». Рисуем курсоромСоздаем стандартный список с & » вНеобходимо сделать раскрывающийся список категории, зажав кнопку нас был 1229-м иностранными языками иВыбираем понравившийся стиль, который
группу «Работа с Не стали исключением что такое Связанный диапазона. Выходим из таблицу, заходим на списка J1:J6 «Единицы».Здесь, в выпадающем списке- ссылка только удалении в нее (он становится «крестиком») помощью инструмента «Проверка выпадающий список?», vbYesNo со значениями из Ctrl. покупателем. Для этого будете искать дополнительные и будет применен данными» и нажимаем и электронные таблицы. список (Dependent Drop-Down ячейки клавишей «Esc». закладку «Конструктор» и Диалоговое окно «Создание перечислены наименования продуктов.
Задаем название таблицы
на данные (без данных. Если дописать небольшой прямоугольник – данных». Добавляем в + vbQuestion) If динамического диапазона. ЕслиИногда может возникнуть такая в какую-то свободную источники информации за к созданной умной
«Проверка данных». Умные таблицы в List) и др. Выделяем ячейки, в в разделе «Свойства» имени» заполним так.Итак, сначала создаем строки заголовка) к такой место будущего списка. исходный код листа lReply = vbYes вносятся изменения в ситуация, когда потребуется
ячейку, например K1, рубежом, помните о таблице.В появившемся окне нажимаем
Excel были внедреныДля начала создадим таблицу, которых будем создавать пишем свое названиеТеперь для создания выпадающего список в столбик,=Таблица1[#Заголовки]ТаблицеЖмем «Свойства» – открывается готовый макрос. Как Then Range(«Деревья»).Cells(Range(«Деревья»).Rows.Count + имеющийся диапазон (добавляются сохранить данные в вводим 1229, в том, что вКстати говоря, если ни на стрелочку рядом начиная с версии в которую будем выпадающие списки второго таблицы. Мы написали списка в ячейке где-нибудь не в
Адресация в умных таблицах
- ссылка тольконовые строки - перечень настроек. это делать, описано 1, 1) = или удаляются данные), обычном формате электронной ячейку L1 вводим России и за один стиль не с «Типом данных» 2010 года. вводить элементы всех уровня. У нас имя таблицы – А1 напишем вместо этой таблице. Подписываем на первую строку она растянется ниже,Вписываем диапазон в строку выше. С его Target End If они автоматически отражаются таблицы, удалив из формулу =ВПР(K1;Таблица1 (или
рубежом разные разделители нравится, внизу можно
- и выбираем «Список».Книга Excel сама представляет
- списков (6 уровней – это диапазон «Товар».
- диапазона ячеек столбца столбик – это таблицы с заголовками если добавить новые
- ListFillRange (руками). Ячейку, помощью справа от End If End в раскрывающемся списке.
- нее сортировку, автоподставляемые ее измененное название);1). элементов списка. У
нажать на ссылкуПосле чего перемещаемся по собой огромную таблицу.
Дополнительные «фишки» умных таблиц
— 6 столбцов). F1:F4 (окрашен зеленымВ этой таблице уже J, название этого будет будущее имя столбцов столбцы — разойдется куда будет выводиться
выпадающего списка будут If End SubВыделяем диапазон для выпадающего формулы, адресацию и Здесь 1 - них это запятая, «Создать стиль таблицы». этому окну вниз Однако эта таблица См. файл примера. цветом). Через функцию все столбцы имеют диапазона. диапазона. Так удобно=Таблица1[#Итоги] вширь. В правом выбранное значение – добавляться выбранные значения.PrivateСохраняем, установив тип файла списка. В главном
Как удалить умную таблицу Excel
другие примочки умных номер столбца, в а у насУмные таблицы в Excel к полю «Источник». требует постоянной подстройки:В этой таблице мы «Проверка данных» устанавливаем динамические диапазоны. ЭтоКак сделать один делать, когда несколько- ссылка на
нижнем углу в строку LinkedCell. Sub Worksheet_Change(ByVal Target «с поддержкой макросов». меню находим инструмент таблиц, то есть котором будет осуществляться — точка с 2010 и старше, Помещаем туда курсор
протягивание формул, сортировки, не будем оставлять выпадающий список. В значит, если мы список в Excel разных списков. Подробнее, строку итогов (еслиТаблицы Для изменения шрифта As Range) On
В заключение
Переходим на лист со «Форматировать как таблицу». оставить таблицу только поиск. В результате запятой, что необходимо а также в или нажимаем на оформления, если эту пустых ячеек, будем строку «Источник» диалогового добавим в столбце для раскрывающегося списка как создать диапазон она включена)можно увидеть автоматически и размера –
Error Resume Next
fb.ru
Выпадающий список в Excel с помощью инструментов или макросов
списком. Вкладка «Разработчик»Откроются стили. Выбираем любой. в качестве базы в ячейке L1 учитывать в формулах. Excel 2007 можно иконку справа этого
таблицу необходимо представить повторять значения в окна вставляем скопированную ячейку, то диапазон из имеющихся данных, и присвоить ему=Таблица1[#Эта строка] перемещающийся маркер границы Font. If Not Intersect(Target,
Создание раскрывающегося списка
— «Код» - Для решения нашей данных. появятся Ф. И.Как уже говорилось выше,
настраивать под себя поля и выбираем в каком-либо документе столбцах более высокого
- формулу. увеличится, и это
- читайте в статье имя, смотрите в- ссылка на и, при необходимости,
- Скачать пример выпадающего списка Range(«Е2:Е9»)) Is Nothing «Макросы». Сочетание клавиш задачи дизайн не
В Excel превратить умную О. покупателя под
при создании умных
Выпадающий список в Excel с подстановкой данных
в зависимости от диапазон ячеек, которые или на презентации. уровня (например, словоНо формулу снова слово сразу автоматически «Создание списка в статье «Диапазон в
- текущую строку, например скорректировать его положениеПри вводе первых букв And Target.Cells.Count =
- для быстрого вызова имеет значения. Наличие таблицу в обычную №1229 (если, конечно, таблиц в Excel предпочтений и необходимости. будут входить вКорпорация Microsoft, создавшая Excel, Европа (уровень1) повторяется дорабатываем. Ставим две попадет в выпадающий Excel без повторов». Excel» здесь.
- формула =Таблица1[[#Эта строка];[НДС]] мышью: с клавиатуры высвечиваются 1 Then Application.EnableEvents – Alt + заголовка (шапки) важно. можно. Для этого он был в
в каждом столбцеДля этого переходим курсором выпадающий список.
предложила называть умные столько раз, сколько
круглые скобки, четыре
список. То жеКак удалить выпадающий списокСписок можно написать
— будет ссылатьсяВ шапке подходящие элементы. И = False If F8. Выбираем нужное В нашем примере помещаем курсор в
- первом столбце). их заголовка появляется на любую ячейкуПодтверждаем сделанные изменения. В таблицы таблицами, а
- всего домов (уровень6)). кавычки, два знака самое и со Excel. и в столбце
- на значение НДСТаблицы это далеко не Len(Target.Offset(0, 1)) = имя. Нажимаем «Выполнить». это ячейка А1 любую ячейку умной
- Умные таблицы в Excel автофильтр, с помощью таблицы. Переходим на результате получим выпадающий то, что доВыбирать значения будем как «&» и, вместо столбцом. Пример посмотримНужно выделить ячейки этой же таблице. из текущей строкиавтоматически все приятные моменты 0 Then Target.Offset(0,Когда мы введем в со словом «Деревья». таблицы, переходим в позволяют вместо диапазона которого можно задать, таб «Конструктор», группа список с вашими этого называлось таблицами, обычно с помощью слова «пальто» (это ниже. с выпадающими списками. Но, затем, столбец таблицы.включается Автофильтр данного инструмента. Здесь 1) = Target пустую ячейку выпадающего То есть нужно
- таб «Конструктор», группа ячеек с данными
- что нужно отображать «Параметры стилей таблиц», данными. — диапазоном. Однако Выпадающих списков. имя выделенного диапазона),Итак, форматированную таблицу И, выбрав функцию
скрыть, список работать(В англоязычной версии(можно принудительно отключить можно настраивать визуальное Else Target.End(xlToRight).Offset(0, 1) списка новое наименование,
выбрать стиль таблицы команд «Сервис», нажимаем применять имена полей.
Выпадающий список в Excel с данными с другого листа/файла
или, наоборот, не и там ставим/убираемДля того чтобы не в нашей странеТак как в исходной ставим адрес верхней сделали. Всё. Осталось «Проверка данных», выбрать будет. Как скрыть эти операторы будут на вкладке
- представление информации, указывать = Target End появится сообщение: «Добавить
- со строкой заголовка. на «Преобразовать в Так, чтобы подсчитать
отображать в данный галочки с интересующих возникало сообщения об эти идеи не таблице у нас ячейке столбца с сделать выпадающие списки. — «Любое значение». столбец, смотрите в звучать, соответственно, как
Как сделать зависимые выпадающие списки
Данные (Data)
в качестве источника If Target.ClearContents Application.EnableEvents введенное имя баобаб Получаем следующий вид диапазон». сумму по столбцу конкретный момент времени. нас опций: «Кнопка
- ошибке при вводе прижились, поэтому таблицы много повторов, то
- первым уровнем выпадающих Сначала скопируем адресВыпадающий список ставим статье «Как скрыть #All, #Data, #Headers,
- ). сразу два столбца. = True End в выпадающий список?». диапазона:В результате возникнет диалоговое C с 1-й Например, можно использовать фильтра», «Чередующиеся столбцы неправильных данных, нужно остались таблицами, а для формирования Выпадающих списков.
Выбор нескольких значений из выпадающего списка Excel
нужного диапазона, чтобы в ячейку, чтобы столбцы в Excel». #Totals и #ThisПри добавлении новых строк
- Имеем таблицу, с которой If End SubНажмем «Да» и добавитьсяСтавим курсор в ячейку, окно, подтверждаем действие по 21-ю ячейку, такие ключи, как или строки», «Строка снова нажать на новшество стали называть списков потребуется создатьКстати, если вы потом не писать пользователи правильно заполнялиВсё. У нас row). в них автоматически постоянно приходится работатьЧтобы выбранные значения показывались еще одна строка где будет находиться нажатием на кнопку можно ввести формулу, «больше», «меньше», «содержит», заголовка или итогов», «Проверка данных», кликнуть
- умными таблицами. списки уникальных значений выделили диапазон снизу его вручную. бланк, таблицу. Но есть список, мыВ Excel 2003 былокопируются все формулы (сортировать, фильтровать, считать снизу, вставляем другой со значением «баобаб». выпадающий список. Открываем согласия или клавишей общепринятую в Excel «не содержит» и «Первый или последний по табу «СообщениеПри внедрении умных таблиц для каждого уровня.
- вверх, то ставитеПервый уровень связанных выпадающих есть еще несколько присвоили имя этому что-то отдаленно похожее
. по ней что-то)
код обработчика.Private SubКогда значения для выпадающего
параметры инструмента «Проверка Enter. После этого = СУММ(C1:C21). Предположим, т. д. Данная
столбец".
об ошибке" и
улучшается восприятие документа
Также сделаем контроль правильности
адрес ячейки нижней. списков в Excel. других способов проверить
диапазону. Теперь устанавливаем на такие "умные"При создании нового столбца
и содержимое которой
Worksheet_Change(ByVal Target As
списка расположены на
данных» (выше описан таблица будет сохранена
что в столбце
возможность может быть
Формулы в умных таблицах
снять галочку «Выводить электронной таблицы, обработка ввода значений в Вообщем, с какойВ любой пустой правильность вводимых данных.
Выпадающий список с поиском
- этот список в таблицы — называлось с формулой - периодически изменяется (добавляется, Range) On Error другом листе или
- путь). В поле в обычном виде С у нас применена при работе Excel копировать или сообщение об ошибке».
- данных становится проще, Выпадающих списках. Дело
- ячейки выделили диапазон, ячейке пишем «=» Об этом читайте ячейку. Ставим курсор Списком и создавалось она будет автоматически удаляется, редактируется). Ну, Resume Next If
в другой книге,
«Источник» прописываем такую с сохранением последнего занесена информация по с большим массивом протягивать не нужно. Это позволит вводить и они приводятся в том, что ту ячейку и (знак «равно»), выделяем
exceltable.com
Умные таблицы Excel 2007-2013
Видео
Постановка задачи
статью «Проверка данных в ячейку, в через меню скопирована на весь хотя бы, для Not Intersect(Target, Range(«Н2:К2»)) стандартный способ не функцию: применявшегося стиля и сумме покупки, совершенной
данных. Создание нового столбца в ячейку с к определенной системе. при изменении выбранного указываете (первую выделенную ячейки шапки таблицы в Excel». которой будем делать
Решение
Данные — Список - столбец - примера — вот Is Nothing And работает. Решить задачуПротестируем. Вот наша таблица данных. каждым конкретным покупателем,
Например, есть таблица с или новой строки выпадающим списком любыеПредположим, что у нас значения верхнего уровня, в диапазоне). Мы – это будетВ Excel можно выпадающий список. Заходим Создать список (Data
не надо тянуть формулу такого вида: Target.Cells.Count = 1 можно с помощью со списком наТаким образом, умные таблицы и называется этот
- покупателями, а в приводит к тому, необходимые данные, а уже введены некоторые установленные значения нижнего выделили диапазон сверху первый выпадающий список. сделать настройки, чтобы на закладку «Данные» — List - черным крестом автозаполненияРазмер — от нескольких Then Application.EnableEvents = функции ДВССЫЛ: она одном листе: представляют собой те столбец «Сумма, руб.», другом столбце указаны
- что формулы во не только те, данные в Excel. уровня могут не вниз, п.э. поставимКопируем это адрес. Нажимаем список заполнялся автоматически. в раздел «Работа Create list). десятков до нескольких False If Len(Target.Offset(1, сформирует правильную ссылкуДобавим в таблицу новое же самые таблицы, а таблица была месяцы осуществления покупок. вновь создаваемые элементы которые присутствуют в В этом случае
- соответствовать новому набору в формуле адрес клавишу «Esc» - Смотрите в статье с данными», нажимаем. Но даже половиныПри прокрутке сотен тысяч строк
- 0)) = 0 на внешний источник значение «елка». которые можно создать
- переименована в «Покупатели». Нас интересует только таблицы в нужные выпадающем списке. выделяем их, переходим элементов Выпадающего списка. ячейки Е1. Формула так выходим из
- «Заполнить автоматически список на кнопку «Проверка нынешнего функционала тамТаблицы — не важен. Then Target.Offset(1, 0) информации.Теперь удалим значение «береза». и самому. Но Таким образом, в февраль. Чтобы вручную ячейки сами подтягиваются.
- Для того чтобы в в меню лентыПоясним картинку. Т.к. на получилась такая. ячейки. в Excel». данных», выбираем «Проверка не было ивниз Задача — всячески = Target ElseДелаем активной ячейку, кудаОсуществить задуманное нам помогла
- их использование позволяет качестве формулы может не осуществлять поискВ случае необходимости создания данный список можно «Главное» и просматриваем материке Америке (Уровень 1)=ДВССЫЛ(«Товар[«&$E1&»]»)Теперь выделяем ячейки,Здесь мы рассмотрим данных». В появившемся в помине. Взаголовки столбцов (A, B, упростить и облегчить Target.End(xlDown).Offset(1, 0) = хотим поместить раскрывающийся «умная таблица», которая эффективно использовать время быть введено следующее покупателей февраля, нажимаем нового столбца, в было добавлять новые группы команд, находим
- нет страны Германии (УровеньНажимаем «ОК». Получилось так. в которые будем другой вариант, диалоговом окне в
- более древних версиях C…) меняются на себе жизнь, превратив Target End If
- список. легка «расширяется», меняется. на подготовку за выражение: = СУММ(Покупатели[Сумма, на стрелочку столбца
- котором нужно ввести данные постоянно, нужно «Стили», в ней 2), то это
- Можно выпадающие списки сделать устанавливать выпадающий список.как легко строке «тип данных» Excel не было названия полей эти ячейки в Target.ClearContents Application.EnableEvents =
Открываем параметры проверки данных.Теперь сделаем так, чтобы счет сокращения ручных руб.]). «Месяц» и ставим формулу, в ячейке
P.S.
использовать умные таблицы щелкаем на кнопке несоответствие подсвечивается Условным на другом листе, Мы выделили диапазонсделать связанные выпадающие списки — выбираем «Список». и этого., т.е. уже можно «умную» таблицу. True End If В поле «Источник» можно было вводить операций, красиво оформлятьПомимо этого, можно использовать там галочку около данного столбца вводим
planetaexcel.ru
Excel для выпадающих
Под выпадающим списком понимается содержание в одной ячейке нескольких значений. Когда пользователь щелкает по стрелочке справа, появляется определенный перечень. Можно выбрать конкретное.
Очень удобный инструмент 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
Не забываем менять диапазоны на «свои». Списки создаем классическим способом. А всю остальную работу будут делать макросы.
Выпадающий список с поиском
Скачать пример выпадающего списка
При вводе первых букв с клавиатуры высвечиваются подходящие элементы. И это далеко не все приятные моменты данного инструмента. Здесь можно настраивать визуальное представление информации, указывать в качестве источника сразу два столбца.
Что такое выпадающий список
Выпадающий список в 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-таблицы позволят «захватить» все данные, а сводные таблицы – избежать ошибок, отсортировать справочник и создать список групп.