Доброго времени на fast-wolker.ru! В процессе рутинной работы с таблицами всегда возникает желание ускорить ввод значений. Особенно это касается наименований позиций. Зачастую мы имеем один и тот же список, с которыми постоянно приходится работать, а новые добавляются постепенно.
Каждый раз заносить в таблицу одно и то же название утомительно; к тому же всегда есть возможность ошибки — поставить лишнюю точку, пробел и так далее. Сегодня расскажу о способах, который позволяет в ряде случаев ускорить работу. В самых простых примерах, может что-то подойдет и Вам. Итак…
Как в экселе создать выпадающий список с выбором нескольких значений
Начну с самого простого способа. Его используют, если в таблице одно и тоже наименование позиции нужно быстро ввести несколько раз. Обязательным условием является наличие заранее составленного списка наименований и непрерывность, отсутствие в нем пустых строк:
Ставим курсор на следующую пустую ячейку под списком кликаем правой кнопкой мыши; из контекстного меню выбираем команду. Или используем сочетание клавиш «Alt+ Стрелка вниз». Такой способ выбора из списка использовать приходиться не слишком часто. Наименования ведь редко повторяются.
Лучше использовать следующий способ — хранение готового списка на другом листе нашей книги. А в нужной ячейке делать ссылку на данные этого листа.
Как в эксель сделать выпадающий список с другого листа?
Я таблицу уже создал . Теперь создадим новый лист в документе и назовем его «база». Лист потом этот можно скрыть, чтобы случайно не сломать документ. В произвольном месте этого нового листа сохраним наш будущий список, в этом примере его можно дополнить пустыми строками и время от времени добавлять в них новые позиции.
Выделяем нужную область и в верхней левом верхнем углу присваиваем ей имя «Список_Кондит». У нас есть теперь первый ИМЕНОВАННЫЙ диапазон в нашей книге эксель. Чтобы потом диапазонами управлять, нужно открыть вкладку «Формулы» и найти там «Диспетчер имен»:
Следующий шаг — идем обратно в наш лист где создана основная таблица. Выделяем в графе нужные строки. Идем во вкладку «Данные»- «Проверка данных». В строке «тип данных» выбираем «Список»….
А в строке «Источник» копируем адрес нашего диапазона из «диспетчера имен»…
Теперь из списка можно выбирать готовые значения. Если список длинный, то прокручиваем вниз. Но нельзя будет менять шрифты, цвета — то есть форматировать содержимое, искать по букве наименование.
Как в экселе сделать выпадающий список в ячейке с выбором нескольких данных
Следующий несложный пример демонстрирует создание связанных списков. Например, вы заполняете товары в разрезе категорий. В документе мы сделаем список категории и список товаров, который формируется после выбора категории .
Сначала сделаем в листе «база» наши будущие списки. У нас будет три категории товара — полуфабрикаты, рыба и хлебобулочные. И мы заполним ими три графы.
Сейчас в них немного позиций; ниже будет описано, как сделать, чтобы при добавлении в «базу» новых позиций они автоматом появлялись в списке при выборе. Первым сделаем выпадающий список категорий в точности так, как это было описано в предыдущем примере. Идем в «Данные -«Проверка данных». Укажем в качестве диапазона только строку с названиями категорий.
Нажимаем клавишу Enter. Убеждаемся, что в нашей таблице на другом листе в нужных выделенных графах появилась возможность выбора наших категорий из списка.
Кстати, получившийся результат можно копировать в нижние ячейки -как обычные формулы. Работаем далее. Сначала займемся доработкой наших трех списков на листе «База». Доработаем сначала графу «Полуфабрикаты». Сделаем это, чтобы позже можно было добавлять в «базу» новые позиции, а они автоматом отображались бы в списках.
Ставим курсор в строку из «Полуфабрикаты, затем открываем вкладку «Главная» и жмем на кнопку «Форматировать как таблицу». Дизайн выбираем любой. Задаем по столбцу нужный вертикальный диапазон, включая только строки с наименованиями; ничего кроме диапазона не меняем.
В процессе этих действий нам стал доступен «конструктор таблиц». Обязательно присваиваем нашей( как бы созданной) таблице имя (в левом верхнем углу) «Полуфабрикаты».
Повторяем действо для граф «Рыба» и «Хлебобулочные».
Завешающий этап. Встаем в нужную строку таблицы, как обычно идем в «Данные»-«Проверка данных», выбираем тип «Список» и в качестве диапазона указываем на соседнюю ячейку , т.е на ранее созданный список, но…
… с использованием в «Источнике» функции ДВССЫЛ. «=ДВССЫЛ($Е$6)». Эта функция возвращает ссылку на наши диапазоны т.е. предыдущие списки, а не содержимое ячейки. Мы работаем с данными, в функцию просто их подставили. Наименование вводится вручную.
Обратите внимание на «источник». Указана абсолютная адресация столбца и ячейки (через знаки «$»). Чтобы распространить в таком виде на остальные строки, нужно будет указывать для каждой строки свой источник данных. Это долго. Можно аккуратно убрать абсолютную адресацию руками из «источника» и после скопировать ячейку на остальные строки ниже. Тогда «формула» распространится корректно.
Попробуйте добавить в базу новые позиции; проверьте — появляются ли они теперь автоматически в списке после указании категорий? Должно получиться.
Делаем выпадающий список в ячейке эксель с выбором по первой букве
Быстро понимаешь, что хорошо бы иметь возможность выбора из списка по первой букве, тогда процесс идет гораздо быстрее. Следующий способ познакомит вас с разработкой в эксель. Сначала Включим в настройках Excel режим конструктора через «Параметры».
- В режиме конструктора вставим в наш документ элемент управления Active X «Поле со списком«:
Курсор мыши приобретет форму крестика. Побудем немного программистами — нарисуем этот элемент в нужной ячейке — так и делаются формы и и окошки которые привычны нам уже давно. В свойствах этого элемента делаем настройки — указываем наш именованный диапазон, цвет фона, шрифта, есть и другие настройки.
- ListFillRange — сюда вставляем наш именованный диапазон из «диспетчера имен»;
- LinkedCell — связанная ячейка, куда будет выводиться выбранный из списка элемент — нужно, если данные ее будут использоваться в других таблицах, формулах и т.д;
- ListRows — количество отображаемых строк в списке;
- Font — выбираем шрифт, размер, стиль;
- ForeColor и BackColor — цвет текста и фона;
- ListRow — количество возвращаемых строк в списке;
- PrintObject — определяет — выводить элемент управления на печать или нет (истина или ложь)
Пока активен режим конструктора — вы не сможете работать со списком как пользователь. Но вы можете изменять его размеры , свойства , положение на листе. После окончания настроек нужно выключить режим конструктора.
Попробуйте найти имя по букве, посмотрите что получается. Можно скопировать и разместить на нужных местах созданный нами элемент управления. Такой способ создания списков хорош для серьезных проектов в Excek, может не всем подойти, но у него есть свои плюсы, которых нет в других способах.
Источник: https://fast-wolker.ru/kak-v-eksel-sdelat-vypadayushhij-spisok-delaem-prostye-i-zavisimye-spiski.html
Как сделать выпадающий список в Excel? Инструкция и видеоурок
Перейти к видеоуроку >>>
Итак, как же создать выпадающий список? В Excel за ввод данных в ячейке отвечает функция (команда) Проверка данных.
Шаг 1. Создадим список значений, которые будем использовать как варианты выпадающего списка. Введем их в столбик где-то вне зоны работы с основной частью таблицы. Например, года рождения учащихся.
Шаг 2. Создадим основную таблицу (если актуально), и определим, в каких ячейках будут выпадающие списки.
В нашем случае ФИО детей будут выводиться в столбце А, а выпадающий список будет напротив каждой фамилии в соответствующей ячейке столбца B: B1, B2, B3 и т.д.
Шаг 3. Сделаем первый выпадающий список.
Для этого щелкнем в первой ячейке, в которой нужно сделать выпадающее меню (в нашем случае это ячейка B1) — на верхней панели Риббон перейдем на вкладку Данные — Проверка данных.
Откроется окно Проверка вводимых значений, в котором мы и сделаем настройки выпадающего списка Excel.
Выбираем Тип данных — Список.
И в Источнике указываем диапазон ячеек, которые будут значениями выпадающего списка (то есть откуда в выпадающем списке будут браться варианты выбора). В нашем случае это столбец H.
Чтобы указать его, нажимаем на кнопку с изображением стрелочки справа от поля Источник.
Окно свернется до полосочки.
И теперь можно выделять мышью диапазон нужных ячеек. Выделив диапазон значений для выпадающего списка, нажимаем кнопку разворачивания окна настройки проверки данных.
Видим, что в Источнике появился выделенный диапазон (в принципе, его адрес можно было вписать вручную в это поле Источник).
Для минимальной настройки выпадающего списка в Excel этого достаточно. Теперь просто нажимаем ОК и в дальнейшем не удаляем столбец со значениями для списка (в нашем случае столбец H).
Также данные для списка можно писать в Источнике через точку с запятой (по-русски) и через запятую (латинскими символами):
Также в источник можно писать имя нужного диапазона ячеек. Это используется, например, для того, чтобы список значений хранить на другом листе (см. инструкцию ниже).
Как пользоваться выпадающим списком Execl?
- Теперь в выбранной на шаге 3 ячейке появился выпадающий список, но, если ячейка не активна, его не видно.
- Но если щелкнуть мышью в ячейке, то справа от нее появится стрелочка, при нажатии на которую появляется выпадающее меню.
- Можно выбирать любое значение из списка.
Шаг 4. Создаем такие же списки в других ячейках.
Вовсе не обязательно в каждой ячейке выполнять такую настройку, на выпадающие списки распространяются все правила ввода значений и копирования формул.
Чтобы сделать такой же список в нескольких ячейках столбца В, а не только в ячейке B1, выделите ту ячейку, в которой уже есть настроенный выпадающий список.
Наведите курсор на правый нижний угол ячейки так, чтобы он принял форму маленького черного крестика. В этот момент нажмите левую кнопку мыши и, удерживая ее, потяните вниз на нужное количество ячеек.
Во всех этих ячейках также будут настроены списки.
Таким образом можно очень быстро заполнить таблицу однотипными данными.
Дополнительные настройки выпадающего списка
Дополнение 1. Подсказка при вводе данных в таблицу
- Для упрощения работы пользователя с выпадающим списком можно выводить подсказки для него — для этого используется вкладка Сообщение для ввода при создании списка. Укажите заголовок и само сообщение, и оно будет отображаться в Excel, если ячейка со списком будет активной:
Дополнение 2. Сообщение об ошибках
Выпадающий список может жестко ограничивать данные, которые пользователь вводит в таблицу (ведь список создается именно в окне Проверка данных) — то есть пользователь может выбирать только одно значение из списка, но не вводить свое. При неверном вводе данных в ячейку со списком появляется сообщение об ошибке.
- Можно настроить это сообщение при создании или редактировании выпадающего списка во вкладке Сообщение об ошибке.
По умолчанию сообщение об ошибке не дает ввести другие данные — Вид Останов. Но можно также выбрать Предупреждение и Сообщение, которые разрешают ввод иных значений в ячейку.
ЧаВо
- — Как удалить данные из ячейки, если в ней выпадающий список, а нужно сделать пустую ячейку.
- — Нужно щелкнуть по ячейке и нажать клавишу DEL.
- — Как добавить в список новые значения для выбора или удалить ненужные?
- — Для этого нужно отредактировать список значений списка (в нашем случае в столбце Н) и заново выбрать диапазон значений в окне Настройка вводимых значений.
- — Как вообще удалить выпадающий список, а не только одно значение?
- — Зайдите Данные — Проверка данных — Тип данных: Любое значение.
- — Как сделать выпадающий список с данными, расположенными на другой странице?
- — Ранее мы говорили, что удобно использовать несколько листов Excel для разных данных, например, для основной таблицы использовать Лист1, а для всех данных, из которых формируются выпадающие списки, можно использовать Лист 2.
Как сделать выпадающий список из данных, расположенных на другом листе? Нужно диапазону с вариантами выпадающего списка присвоить имя (Выделить диапазон — Формулы — Присвоить имя).
- А затем на Шаге 3 в качестве источника указать это имя диапазона.
- Таким образом можно делать, если значения для выпадающего списка находятся на том же или другом листе, что и сам список.
Видеоурок по теме
Спасибо за Вашу оценку. Если хотите, чтобы Ваше имя стало известно автору, войдите на сайт как пользователь
и нажмите Спасибо еще раз. Ваше имя появится на этой стрнице.
Читайте также
Есть мнение? Оставьте свой комментарий:
Порядок вывода комментариев: По умолчанию Сначала новые Сначала старые
Источник: http://pedsovet.su/excel/5672_kak_sdelat_vypadayuschiy_spisok_v_excel
Выпадающий список в Excel
Элемент списка знаком нам по формам на сайтах. Удобно выбирать уже готовые значения. Например, никто не вводит месяц вручную, его берут из такого перечня. Заполнить выпадающий список в Excel можно с использованием различных инструментов. В статье рассмотрим каждый из них.
Как сделать выпадающий список в Excel
Как сделать выпадающий список в Excel 2010 или 2016 с помощью одной командой на панели инструментов? На вкладке «Данные» в разделе «Работа с данными» найдите кнопку «Проверка данных». Нажмите на нее и выберите первый пункт. Откроется окно. Во вкладке «Параметры» в выпадающем разделе «Тип данных» выберите «Список».
Снизу появится строка для указания источников.
Указывать информацию можно по-разному.
- Ручной ввод Введите перечень через точку с запятой.
- Выбор диапазона значений с листа Excel Для этого начните выделять ячейки мышью.
Как отпустите – окно снова станет нормальным, а в строке появятся адреса.
- Создание выпадающего списка в Excel с подстановкой данных
Сначала назначим имя. Для этого создайте на любом листе такую таблицу. Выделите ее и нажмите правую кнопку мыши. Щелкните по команде «Присвоить имя».
Введите имя в строку сверху. Вызовите окно «Проверка данных» и в поле «Источник» укажите имя, поставив перед ним знак «=». В любом из трех случаев Вы увидите нужный элемент. Выбор значения из выпадающего списка Excel происходит с помощью мыши. Нажмите на него и появится перечень указанных данных. Вы узнали, как создать выпадающий список в ячейке Excel. Но можно сделать и больше.
Подстановка динамических данных Excel
Если Вы добавите какое-то значение в диапазон данных, которые подставляются в перечень, то в нем изменения не произойдет, пока вручную не будут указаны новые адреса. Чтобы связать диапазон и активный элемент, необходимо оформить первый как таблицу. Создайте вот такой массив. Выделите его и на вкладке «Главная» выберите любой стиль таблицы.
Обязательно поставьте галочку внизу. Вы получите такое оформление. Создайте активный элемент, как было описано выше. В качестве источника введите формулу =ДВССЫЛ(«Таблица1[Города]»)
Чтобы узнать имя таблицы, перейдите на вкладку «Конструктор» и посмотрите его. Можете поменять имя на любое другое. Функция ДВССЫЛ создает ссылку на ячейку или диапазон. Теперь ваш элемент в ячейке привязан к массиву данных.
Попробуем увеличить количество городов. Обратная процедура — подстановка данных из выпадающего списка в таблицу Excel, работает очень просто. В ячейку, куда надо вставить выбранное значение из таблицы, введите формулу:
=Адрес_ячейки
Например, если перечень данных находится в ячейке D1, то в ячейке, куда будут выведены выбранные результаты введите формулу
=D1
Как убрать (удалить) выпадающий список в Excel
Откройте окно настройки выпадающего списка и выберите «Любое значение» в разделе «Тип данных».
Ненужный элемент исчезнет.
Зависимые элементы
Иногда в Excel встречается необходимость создания нескольких перечней, когда один зависит от другого. Например, каждый город имеет несколько адресов. При выборе в первом мы должны получить только адреса выбранного населенного пункта. В этом случае дайте имя каждому столбцу. Выделите без первой ячейки (названия) и нажмите правую кнопку мыши. Выберите «Присвоить имя».
Это будет название города. При именовании Санкт-Петербурга и Нижнего Новгорода Вы получите ошибку, так как имя не может содержать пробелов, символов подчеркивания, специальных символов и т.д. Поэтому переименуем эти города, поставив нижнее подчеркивание. Первый элемент в ячейке A9 создаем обычным образом. А во втором пропишем формулу: =ДВССЫЛ(A9)
Сначала Вы увидите сообщение об ошибке. Соглашайтесь.
Проблема в отсутствии выбранного значения. Как только в первом перечне будет выбран город, второй заработает.
Как настроить зависимые выпадающие списки в Excel с поиском
Можно использовать динамический диапазон данных для второго элемента. Это удобнее, если количество адресов будет расти. Создадим выпадающий перечень городов. Оранжевым выделен именованный диапазон.
Для второго перечня нужно ввести формулу: =СМЕЩ($A$1;ПОИСКПОЗ($E$6;$A:$A;0)-1;1;СЧЁТЕСЛИ($A:$A;$E$6);1)
Функция СМЕЩ возвращает ссылку на диапазон, который смещен относительно первой ячейки на определенное число строк и столбцов:=СМЕЩ(начало; вниз; вправо; размер_в_строках; размер_в_столбцах)
ПОИСКПОЗ возвращает номер ячейки с выбранным в первом списке (E6) городом в указанной области SA:$A. СЧЕТЕСЛИ считает количество совпадений в диапазоне со значением в указанной ячейке (E6).
Мы получили связанные выпадающие списки в Excel с условием на совпадение и поиском диапазона для него.
Мультивыбор
Часто нам необходимо получить несколько значений из набора данных. Можно вывести их в разные ячейки, а можно объединить в одну. В любом случае необходим макрос. Нажмите на ярлыке листа внизу правую кнопку мыши и выберите команду «Просмотреть код».
Откроется окно разработчика. В него надо вставить следующий алгоритм. Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range(«C2:F2»)) 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
Обратите внимание, что в строке
If Not Intersect(Target, Range(«E7»)) Is Nothing And Target.Cells.Count = 1 Then
Следует проставить адрес ячейки со списком. У нас это будет E7.
Вернитесь на лист Excel и создайте в ячейке E7 список. При выборе значения будут появляться под ним.
Следующий код позволит накапливать значения в ячейке. Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Not Intersect(Target, Range(«E7»)) 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. Надеемся, эта информация поможет вам.
Источник: https://WindowsTips.ru/vypadayushhij-spisok-v-excel
Выпадающий список в ячейке листа
3749 02.10.2012 Скачать пример
Видео
У кого мало времени и нужно быстро ухватить суть — смотрим обучающее видео:
Кому интересны подробности и нюансы всех описанных способов — дальше по тексту.
Способ 1. Примитивный
Один щелчок правой кнопкой мыши по пустой ячейке под столбцом с данными, команда контекстного меню Выбрать из раскрывающегося списка (Choose from drop-down list) или нажать сочетание клавиш ALT+стрелка вниз. Способ не работает, если ячейку и столбец с данными отделяет хотя бы одна пустая строка или вам нужен товар, который еще ни разу не вводился выше:
Способ 2. Стандартный
- Выделите ячейки с данными, которые должны попасть в выпадающий список (например, наименованиями товаров).
- Если у вас Excel 2003 или старше — выберите в меню Вставка — Имя — Присвоить (Insert — Name — Define), если Excel 2007 или новее — откройте вкладку Формулы (Formulas) и воспользуйтесь кнопкой Диспетчер имен (Name Manager), затем Создать.
Введите имя (можно любое, но обязательно без пробелов и начать с буквы!) для выделенного диапазона (например Товары). Нажмите ОК.
- Выделите ячейки (можно сразу несколько), в которых хотите получить выпадающий список и выберите в меню (на вкладке) Данные — Проверка (Data — Validation).
Из выпадающего списка Тип данных (Allow) выберите вариант Список (List) и введите в строчку Источник (Source) знак равенства и имя диапазона (т.е. =Товары).
Нажмите ОК.
Все! Наслаждайтесь!
Важный нюанс. В качестве источника данных для списка может выступать и динамический именованный диапазон, например прайс-лист.
Тогда при дописывании новых товаров к прайсу, они будут автоматически добавляться к выпадающему списку.
Еще одним часто используемым трюком для таких списков является создание связанных выпадающих списков (когда содержимое одного списка меняется в зависимости от выбора в другом).
Способ 3. Элемент управления
Этот способ представляет собой вставку на лист нового объекта — элемента управления «поле со списком» с последующей привязкой его к диапазонам на листе. Для этого:
- В Excel 2007/2010 откройте вкладку Разработчик (Developer). В более ранних версиях — панель инструментов Формы (Forms) через меню Вид — Панели инструментов — Формы (View — Toolbars — Forms). Если этой вкладки не видно, то нажмите кнопку Офис — Параметры Excel — флажок Отображать вкладку Разработчик на ленте (Office Button — Excel Options — Show Developer Tab in the Ribbon)
- Найдите значок выпадающего списка среди элементов управления форм (не ActiveX!). Ориентируйтесь по всплывающим подсказкам — Поле со списком:
Щелкните по значку и нарисуйте небольшой горизонтальный прямоугольник — будущий список.
- Щелкните по нарисованному списку правой кнопкой мыши и выберите команду Формат объекта (Format control). В появившемся диалоговом окне задайте
- Формировать список по диапазону — выделите ячейки с наименованиями товаров, которые должны попасть в список
- Связь с ячейкой — укажите ячейку куда нужно выводить порядковый номер выбранного пользователем элемента.
- Количество строк списка — сколько строк показывать в выпадающем списке. По умолчанию — 8, но можно больше, чего не позволяет предыдущий способ.
После нажатия на ОК списком можно пользоваться.
Чтобы вместо порядкового номера элемента выводилось его название можно дополнительно использовать функцию ИНДЕКС (INDEX), которая умеет выводить содержимое нужной по счету ячейки из диапазона:
Способ 4. Элемент ActiveX
Этот способ частично напоминает предыдущий. Основное отличие в том, что на лист добавляется не элемент управления, а элемент ActiveX «Поле со списком» из раскрывающегося набора под кнопкой Вставить (Insert) с вкладки Разработчик (Developer):
Механизм добавления тот же — выбираем объект из списка и рисуем его на листе. А вот дальше начинаются серьезные отличия от предыдущего способа.
Во-первых, созданный выпадающий ActiveX список может находится в двух принципиально разных состояниях — режиме отладки, когда можно настраивать его параметры и свойства, двигать его по листу и менять размеры и — режиме ввода, когда единственное, что можно — выбирать из него данные. Переключение между этими режимами происходит с помощью кнопки Режим Конструктора (Design Mode) на вкладке Разработчик (Developer):
Если эта кнопка нажата, то мы можем настраивать параметры выпадающего списка, нажав соседнюю кнопку Свойства (Properties), которая откроет окно со списком всех возможных настроек для выделенного объекта:
Самые нужные и полезные свойства, которые можно и нужно настроить:
- ListFillRange — диапазон ячеек, откуда берутся данные для списка. Выделить мышью диапазон он не даст, надо просто вписать его руками с клавиатуры (например, Лист2!A1:A5)
- LinkedCell — связанная ячейка, куда будет выводиться выбранный из списка элемент
- ListRows — количество отображаемых строк
- Font — шрифт, размер, начертание (курсив, подчеркивание и т.д. кроме цвета)
- ForeColor и BackColor — цвет текста и фона, соответственно
Большим и жирным плюсом этого способа является возможность быстрого перехода к нужному элементу в списке при вводе первых букв с клавиатуры(!), чего нет у всех остальных способов. Приятным моментом, также, является возможность настройки визуального представления (цветов, шрифтов и т.д.)
При использовании этого способа, также возможно указывать в качестве ListFillRange не только одномерные диапазоны.
Можно, например задать диапазон из двух столбцов и нескольких строк, указав дополнительно, что выводить нужно два столбца (свойство ColumnCount=2).
Тогда можно получить весьма привлекательные результаты, окупающие все потраченные на дополнительные настройки усилия:
Итоговая сравнительная таблица всех способов
Способ 1. Примитивный | Способ 2. Стандартный | Способ 3. Элемент управления | Способ 4. Элемент ActiveX | |
Сложность | низкая | средняя | высокая | высокая |
Возможность настройки шрифта, цвета и т.д. | нет | нет | нет | да |
Количество отображаемых строк | всегда 8 | всегда 8 | любое | любое |
Быстрый поиск элемента по первым буквам | нет | нет | нет | да |
Необходимость использования дополнительной функции ИНДЕКС | нет | нет | да | нет |
Возможность создания связанных выпадающих списков | нет | да | нет | нет |
Ссылки по теме:
Источник: https://www.planetaexcel.ru/techniques/1/40/
Выпадающий список в 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.
Бывает, когда из раскрывающегося списка необходимо выбрать сразу несколько элементов. Рассмотрим пути реализации задачи.
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 IfEnd Sub
Не забываем менять диапазоны на «свои». Списки создаем классическим способом. А всю остальную работу будут делать макросы.
Выпадающий список с поиском
Скачать пример выпадающего списка
При вводе первых букв с клавиатуры высвечиваются подходящие элементы. И это далеко не все приятные моменты данного инструмента. Здесь можно настраивать визуальное представление информации, указывать в качестве источника сразу два столбца.
Источник: https://exceltable.com/vba-macros/vypadayushchiy-spisok-v-excel
Как сделать в Эксель выпадающий список (Excel), другие списки
Как сделать в Эксель выпадающий список, этот вопрос мы сегодня рассмотрим на практике. С помощью этой статьи, научимся делать не только выпадающие списки, но и простые, зависимые, раскрывающие. Затем скопируем сделанный список в Excel программу и вставим его.
Зачем нужны списки в Экселе
На самом деле, выпадающие списки очень необходимы, если Вы часто работаете с таблицами в данной программе и её заполняете различными цифрами и символами. Они нужны, чтобы сэкономить время вашей работы, и не затрачивать его на долгое заполнение таблиц. На практике, выпадающий список работает эффективно и запоминает все ранее записанные Вами данные в таблицах. Далее, мы создадим такой список, и сделаем другие похожие списки, которые помогут Вам упростить работу в этой программе.
к оглавлению ↑
Простой выпадающий список в Excel
Создадим простой выпадающий список. Открываем программу Ексель и прописываем в первой таблице какие-нибудь слова или цифры. Выделяем один столбец со словами и далее, вверху панели управления программы нажимаем на раздел «Данные» и затем «Проверка данных» (Скрин 1).
Дальше у Вас откроется окно, где есть функция «Тип данных» нажимаем по ней левой кнопкой мыши и выбираем «Список», сохраняем изменения с помощью кнопки «ОК» (Скрин 2).
Затем следует нажать на «Источник» и ещё раз выделить заполненный нами столбец, только после этого нажмите «ОК». Итак, мы теперь знаем, как сделать в Эксель выпадающий список его ещё называют «всплывающий». После его создания он выглядит так (Скрин 3).
Вы можете нажимать на стрелочку и выбирать написанные ранее слова в таблице. Мы рассмотрели простой вариант. Далее, будут ещё списки, но с более усложнённом вариантом.
к оглавлению ↑
Выпадающий список с другого листа в Excel
Если работаете с разных листов программы Эксель, то выпадающий список с другого листа очень сильно нам будет помогать в дальнейшей работе. Сделать его довольно просто.
Сначала выделяете нужный столбец с данными в программе, и жмёте снова кнопку «Проверка данных» на втором листе. Далее переходим на первый лист и в разделе «Источник», потом Вам стоит выделить ячейки и нажать на кнопку «ОК».
После этого, выпадающий список должен перенестись на другой лист.
к оглавлению ↑
Зависимые выпадающие списки в Excel
Что такое зависимые выпадающие списки? Это списки, которые создаются из двух источников. Например, есть две таблицы, в которые Вы записали имена своих знакомых и друзей. А в следующей колонке, будет отображаться зависимый выпадающий от них список, который показывает те же данные, что были записаны в других таблицах. Далее, мы создадим такие зависимые списки и раскрывающие.
к оглавлению ↑
Как создать раскрывающийся список в Эксель
Раскрывающий список в Эксель можно создать с помощью специальной функции, о которой мы ниже поговорим. Он чем то похож на выпадающий, только с использованием данного значения «СМЕЩ». Итак, переходим к процессу создания.
Проделывайте всё те же действия, что мы делали в первой части статьи и далее в «Источнике» укажите такую формулу « =СМЕЩ(A$2$;0;0;5», затем нажмите «ОК», чтобы создался раскрывающийся список в Экселе.
к оглавлению ↑
Как сделать зависимые выпадающие списки
Выше мы немного говорили о зависимых списках. А теперь, создадим их. Но для начала, создайте в Ексель таблицы и заполните два столбца любыми данными. Далее, выделяйте эти столбцы в таблицах, и нажимаете вверху кнопку – «Создать из выделенного фрагмента» (Скрин 4).
Далее, создаём выпадающий список, (процесс создания был показан выше в статье). Затем, зайдите в функцию «Источники» и напишите в поле такую команду — =ДВССЫЛ($D$2). Она поможет создать зависимые списки. Кликайте кнопку «ОК», после чего должна появится ещё одна колонка в таблице, с зависимым всплывающим списком.
к оглавлению ↑
Как скопировать выпадающий список в Excel
Скопировать выпадающий список не составит сильного труда для пользователей. Для этого выделяем левой кнопкой мыши нужную нам ячейку, и нажимаем клавиши CTRL+C (Копировать).
Затем, нажмите на любой столбец в таблице Ексель. И правой кнопкой мыши вызовите команду – «Специальная вставка».
В этой функции вставки нужно установить – «Условия на значения» и нажать на «ОК», чтобы сохранить изменения.
После этого снова нажимаем одновременно клавиши – CTRL+V, что значит «Вставить» и впоследствии, весь скопированный выпадающий список в этой программе успешно вставится.
к оглавлению ↑
Заключение
Итак, в статье мы рассмотрели вопрос, как сделать в Эксель выпадающий список и вместе с тем сделали другие списки. Эта инструкция проверялась на практике.
Возможно, данный инструмент от программы Ексель Вам поможет решить некоторые вопросы во время заполнения таблиц или при работе с документами.
Пользуйтесь данными функциями, и работа с программой Excel станет быстрой и удобной. Спасибо за внимание, и удачи Вам!
С уважением, Иван Кунпан.
Источник: https://biz-iskun.ru/kak-sdelat-v-eksel-vypadayushhij-spisok.html
Двухуровневый выпадающий список в Excel
Имеется несколько способов создания выпадающего списка. Выбор одного из них зависит от структуры имеющихся у вас данных.
Первый способ основывается на создание «умной» таблицы, заголовок которой содержит значения первого выпадающего списка (группы), а строки таблицы соответствуют значениям второго выпадающего списка (подгруппы). Значения элементов подгруппы должны располагаться в соответствующем столбце группы, как на рисунке ниже.
Формула ДВССЫЛ возвращает ссылку на диапазон заголовков «умной» таблицы. Преимущество использования такой таблицы в том, что при добавлении столбцов, выпадающий список будет автоматически расширен.
Осталось создать второй зависимый выпадающий список – список подгрупп.
Смело повторяем 4 первых пункта описанных выше. Источником в окне Проверка данных для второго выпадающего списка будет служить формула =ДВССЫЛ(«Таблица1[«&F2&»]»). Ячейка F2 в данном случае — значение первого выпадающего списка.
Можно использовать и обычную «неумную» таблицу, однако в этом случае вам придется вручную изменять диапазоны заголовков и строк. В рассмотренном примере это происходит автоматически.
Второй способ создания двухуровнего списка
Второй способ удобно применять, когда данные выпадающего списка записаны в два столбца. В первом идет наименование группы, а во втором – подгруппы.
ВАЖНО! Перед созданием зависимого списка по подгруппам необходимо отсортировать исходную таблицу по первому столбцу (столбец с группой) далее будет понятно зачем это делается.
Для создания выпадающего групп нам понадобится дополнительный столбец, содержащий уникальные значения групп из исходной таблицы. Для создания этого списка используйте функцию удаления дубликатов или воспользуйтесь командой Уникальные из надстройки VBA-Excel.
Теперь создадим выпадающий список групп. Для этого выполните 4 первых пункта из первого способа создания двухуровнего списка. В качестве Источника укажите диапазон уникальных значений групп. Тут все стандартно.
Рекомендация: удобно в качестве источника указывать именованный диапазон. Для его создания откройте Диспетчер имен со вкладки Формулы и присвойте имя диапазону с уникальными значениями.
Теперь самая сложная часть — указать в Источнике динамическую ссылку на диапазон со значениями второго выпадающего списка (списка подгрупп). Решать ее будем с помощью функции СМЕЩ(ссылка, смещ_по_строкам, смещ_по_столбцам, [высота], [ширина]), которая возвращает ссылку на диапазон, отстоящий от ячейки или диапазона ячеек на заданное число строк и столбцов.
- Ссылка в нашем случае — $A$1 — верхний левый угол исходной таблицы;
- Смещ_по_строкам — ПОИСКПОЗ(F3;$A$1:$A$67;0)-1 — номер строки со значением искомой группы (в моем случае страны ячейка F3) минус единица;
- Cмещ_по_столбцам — 1 — так как нам необходим столбец с подгруппами (городами);
- [Высота] — СЧЁТЕСЛИ($A$1:$A$67;F3) — количество подгрупп в искомой группе (количество городов в стране F3);
- [Ширина] — 1 — так как это ширина нашего столбца с подгруппами.
Источник: https://micro-solution.ru/excel/drop-down-lists/two-level