Как в excel сделать выпадающий список с автозаполнением
Microsoft Excel: выпадающие списки
При работе в программе Microsoft Excel в таблицах с повторяющимися данными, очень удобно использовать выпадающий список. С его помощью можно просто выбирать нужные параметры из сформированного меню. Давайте выясним, как сделать раскрывающийся список различными способами.
Создание дополнительного списка
Самым удобным, и одновременно наиболее функциональным способом создания выпадающего списка, является метод, основанный на построении отдельного списка данных.
Прежде всего, делаем таблицу-заготовку, где собираемся использовать выпадающее меню, а также делаем отдельным списком данные, которые в будущем включим в это меню. Эти данные можно размещать как на этом же листе документа, так и на другом, если вы не хотите, чтобы обе таблице располагались визуально вместе.
Выделяем данные, которые планируем занести в раскрывающийся список. Кликаем правой кнопкой мыши, и в контекстном меню выбираем пункт «Присвоить имя…».
Открывается форма создания имени. В поле «Имя» вписываем любое удобное наименование, по которому будем узнавать данный список. Но, это наименование должно начинаться обязательно с буквы. Можно также вписать примечание, но это не обязательно. Жмем на кнопку «OK».
Переходим во вкладку «Данные» программы Microsoft Excel. Выделяем область таблицы, где собираемся применять выпадающий список. Жмем на кнопку «Проверка данных», расположенную на Ленте.
Открывается окно проверки вводимых значений. Во вкладке «Параметры» в поле «Тип данных» выбираем параметр «Список». В поле «Источник» ставим знак равно, и сразу без пробелов пишем имя списка, которое присвоили ему выше. Жмем на кнопку «OK».
Выпадающий список готов. Теперь, при нажатии на кнопку у каждой ячейки указанного диапазона будет появляться список параметров, среди которых можно выбрать любой для добавления в ячейку.
Создание выпадающего списка с помощью инструментов разработчика
Второй способ предполагает создание выпадающего списка с помощью инструментов разработчика, а именно с использованием ActiveX. По умолчанию, функции инструментов разработчика отсутствуют, поэтому нам, прежде всего, нужно будет их включить. Для этого, переходим во вкладку «Файл» программы Excel, а затем кликаем по надписи «Параметры».
В открывшемся окне переходим в подраздел «Настройка ленты», и ставим флажок напротив значения «Разработчик». Жмем на кнопку «OK».
После этого, на ленте появляется вкладка с названием «Разработчик», куда мы и перемещаемся. Чертим в Microsoft Excel список, который должен стать выпадающим меню. Затем, кликаем на Ленте на значок «Вставить», и среди появившихся элементов в группе «Элемент ActiveX» выбираем «Поле со списком».
Кликаем по месту, где должна быть ячейка со списком. Как видите, форма списка появилась.
Затем мы перемещаемся в «Режим конструктора». Жмем на кнопку «Свойства элемента управления».
Открывается окно свойств элемента управления. В графе «ListFillRange» вручную через двоеточие прописываем диапазон ячеек таблицы, данные которой будут формировать пункты выпадающего списка.
Далее, кликаем по ячейке, и в контекстном меню последовательно переходим по пунктам «Объект ComboBox» и «Edit».
Выпадающий список в Microsoft Excel готов.
Чтобы сделать и другие ячейки с выпадающим списком, просто становимся на нижний правый край готовой ячейки, нажимаем кнопку мыши, и протягиваем вниз.
Связанные списки
Также, в программе Excel можно создавать связанные выпадающие списки. Это такие списки, когда при выборе одного значения из списка, в другой графе предлагается выбрать соответствующие ему параметры. Например, при выборе в списке продуктов картофеля, предлагается выбрать как меры измерения килограммы и граммы, а при выборе масла растительного – литры и миллилитры.
Прежде всего, подготовим таблицу, где будут располагаться выпадающие списки, и отдельно сделаем списки с наименованием продуктов и мер измерения.
Присваиваем каждому из списков именованный диапазон, как это мы уже делали ранее с обычными выпадающими списками.
В первой ячейке создаём список точно таким же образом, как делали это ранее, через проверку данных.
Во второй ячейке тоже запускаем окно проверки данных, но в графе «Источник» вводим функцию «=ДВССЫЛ» и адрес первой ячейки. Например, =ДВССЫЛ($B3).
Как видим, список создан.
Теперь, чтобы и нижние ячейки приобрели те же свойства, как и в предыдущий раз, выделяем верхние ячейки, и при нажатой клавише мышки «протаскиваем» вниз.
Всё, таблица создана.
Мы разобрались, как сделать выпадающий список в Экселе. В программе можно создавать, как простые выпадающие списки, так и зависимые. При этом, можно использовать различные методы создания. Выбор зависит от конкретного предназначения списка, целей его создания, области применения, и т.д.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Выпадающий список в Excel с помощью инструментов или макросов
Под выпадающим списком понимается содержание в одной ячейке нескольких значений. Когда пользователь щелкает по стрелочке справа, появляется определенный перечень. Можно выбрать конкретное.
Очень удобный инструмент Excel для проверки введенных данных. Повысить комфорт работы с данными позволяют возможности выпадающих списков: подстановка данных, отображение данных другого листа или файла, наличие функции поиска и зависимости.
Создание раскрывающегося списка
Путь: меню «Данные» — инструмент «Проверка данных» — вкладка «Параметры». Тип данных – «Список».
Ввести значения, из которых будет складываться выпадающий список, можно разными способами:
- Вручную через «точку-с-запятой» в поле «Источник».
- Ввести значения заранее. А в качестве источника указать диапазон ячеек со списком.
- Назначить имя для диапазона значений и в поле источник вписать это имя.
Любой из вариантов даст такой результат.
Выпадающий список в Excel с подстановкой данных
Необходимо сделать раскрывающийся список со значениями из динамического диапазона. Если вносятся изменения в имеющийся диапазон (добавляются или удаляются данные), они автоматически отражаются в раскрывающемся списке.
- Выделяем диапазон для выпадающего списка. В главном меню находим инструмент «Форматировать как таблицу».
- Откроются стили. Выбираем любой. Для решения нашей задачи дизайн не имеет значения. Наличие заголовка (шапки) важно. В нашем примере это ячейка А1 со словом «Деревья». То есть нужно выбрать стиль таблицы со строкой заголовка. Получаем следующий вид диапазона:
- Ставим курсор в ячейку, где будет находиться выпадающий список. Открываем параметры инструмента «Проверка данных» (выше описан путь). В поле «Источник» прописываем такую функцию:
Протестируем. Вот наша таблица со списком на одном листе:
Добавим в таблицу новое значение «елка».
Теперь удалим значение «береза».
Осуществить задуманное нам помогла «умная таблица», которая легка «расширяется», меняется.
Теперь сделаем так, чтобы можно было вводить новые значения прямо в ячейку с этим списком. И данные автоматически добавлялись в диапазон.
- Сформируем именованный диапазон. Путь: «Формулы» — «Диспетчер имен» — «Создать». Вводим уникальное название диапазона – ОК.
- Создаем раскрывающийся список в любой ячейке. Как это сделать, уже известно. Источник – имя диапазона: =деревья.
- Снимаем галочки на вкладках «Сообщение для ввода», «Сообщение об ошибке». Если этого не сделать, Excel не позволит нам вводить новые значения.
- Вызываем редактор Visual Basic. Для этого щелкаем правой кнопкой мыши по названию листа и переходим по вкладке «Исходный текст». Либо одновременно нажимаем клавиши Alt + F11. Копируем код (только вставьте свои параметры).
- Сохраняем, установив тип файла «с поддержкой макросов».
- Переходим на лист со списком. Вкладка «Разработчик» — «Код» — «Макросы». Сочетание клавиш для быстрого вызова – Alt + F8. Выбираем нужное имя. Нажимаем «Выполнить».
Когда мы введем в пустую ячейку выпадающего списка новое наименование, появится сообщение: «Добавить введенное имя баобаб в выпадающий список?».
Нажмем «Да» и добавиться еще одна строка со значением «баобаб».
Выпадающий список в Excel с данными с другого листа/файла
Когда значения для выпадающего списка расположены на другом листе или в другой книге, стандартный способ не работает. Решить задачу можно с помощью функции ДВССЫЛ: она сформирует правильную ссылку на внешний источник информации.
- Делаем активной ячейку, куда хотим поместить раскрывающийся список.
- Открываем параметры проверки данных. В поле «Источник» вводим формулу: =ДВССЫЛ(“[Список1.xlsx]Лист1!$A$1:$A$9”).
Имя файла, из которого берется информация для списка, заключено в квадратные скобки. Этот файл должен быть открыт. Если книга с нужными значениями находится в другой папке, нужно указывать путь полностью.
Как сделать зависимые выпадающие списки
Возьмем три именованных диапазона:
Это обязательное условие. Выше описано, как сделать обычный список именованным диапазоном (с помощью «Диспетчера имен»). Помним, что имя не может содержать пробелов и знаков препинания.
- Создадим первый выпадающий список, куда войдут названия диапазонов.
- Когда поставили курсор в поле «Источник», переходим на лист и выделяем попеременно нужные ячейки.
- Теперь создадим второй раскрывающийся список. В нем должны отражаться те слова, которые соответствуют выбранному в первом списке названию. Если «Деревья», то «граб», «дуб» и т.д. Вводим в поле «Источник» функцию вида =ДВССЫЛ(E3). E3 – ячейка с именем первого диапазона.
Выбор нескольких значений из выпадающего списка Excel
Бывает, когда из раскрывающегося списка необходимо выбрать сразу несколько элементов. Рассмотрим пути реализации задачи.
- Создаем стандартный список с помощью инструмента «Проверка данных». Добавляем в исходный код листа готовый макрос. Как это делать, описано выше. С его помощью справа от выпадающего списка будут добавляться выбранные значения.
- Чтобы выбранные значения показывались снизу, вставляем другой код обработчика.
- Чтобы выбираемые значения отображались в одной ячейке, разделенные любым знаком препинания, применим такой модуль.
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
Не забываем менять диапазоны на «свои». Списки создаем классическим способом. А всю остальную работу будут делать макросы.
Выпадающий список с поиском
- На вкладке «Разработчик» находим инструмент «Вставить» – «ActiveX». Здесь нам нужна кнопка «Поле со списком» (ориентируемся на всплывающие подсказки).
- Щелкаем по значку – становится активным «Режим конструктора». Рисуем курсором (он становится «крестиком») небольшой прямоугольник – место будущего списка.
- Жмем «Свойства» – открывается перечень настроек.
- Вписываем диапазон в строку ListFillRange (руками). Ячейку, куда будет выводиться выбранное значение – в строку LinkedCell. Для изменения шрифта и размера – Font.
При вводе первых букв с клавиатуры высвечиваются подходящие элементы. И это далеко не все приятные моменты данного инструмента. Здесь можно настраивать визуальное представление информации, указывать в качестве источника сразу два столбца.
Списки автозаполнения
Если вы еще не знаете про такой прием в Excel, как автозаполнение ячеек путем протягивания мышью крестика — то самое время это про него узнать. Эта возможность очень полезная. Что дает автозаполнение: допустим вы хотите заполнить строку или столбец днями недели(Понедельник, Вторник и т.д.). Человек, который про автозаполнение не знает последовательно вводит в каждую ячейку вручную все эти дни. Но в Excel для выполнения подобной операции вам потребуется заполнить лишь первую ячейку. Запишем в неё Понедельник. Теперь выделяем эту ячейку и ведем курсор мыши к нижнему правому углу ячейки. Курсор приобретет вид черного крестика:
Как только курсор стал крестиком, жмем левую кнопку мыши и удерживая её тянем вниз(если надо заполнить строки) или вправо(если надо заполнить столбцы) на необходимое количество ячеек. Теперь все захваченные нами ячейки заполнены днями недели. И не одним Понедельником, а по порядку следования:
для заполнения вниз подобным методом большого количества строк можно не тянуть за крестик, а быстро дважды нажать левую кнопку мыши на ячейке, как только курсор приобретет вид крестика
Напрашивается вопрос: так можно сделать только с днями недели или есть еще какие-то возможности? Ответ — есть, и немалые.
Если вместо левой кнопки мыши, зажать правую и протянуть, то по завершении Excel выдаст меню, в котором будет предложено выбрать метод заполнения: Копировать ячейки, Заполнить, Заполнить только форматы, Заполнить только значения, Заполнить по дням, Заполнить по рабочим дням, Заполнить по месяцам, Заполнить по годам, Линейное приближение, Экспоненциальное приближение, Прогрессия:
Выбираете необходимый пункт и вуаля!
Серым шрифтом выделены неактивные пункты меню — те, которые нельзя применить к данным в выделенных ячейках
Подобное автозаполнение доступно для числовых данных, для дат и некоторых распространенных данных — дней недели и месяцев.
Однако помимо использования встроенных в Excel списков автозаполнения, можно создать и свои списки. Например, Вы часто заполняете шапку таблицы словами: Дата, Артикул, Цена, Сумма. Можно их вписывать каждый раз или копировать откуда-то, но можно сделать и по-другому. Если Вы используете:
- Excel 2003 , то переходите Сервис —Параметры -Вкладка Списки;
- Excel 2007 —Кнопка Офис —Параметры Excel -вкладка Основные -кнопка Изменить списки;
- Excel 2010 —Файл—Параметры -вкладка Дополнительно -кнопка Изменить списки. .
Появится окно:
Выбираете пункт НОВЫЙ СПИСОК — ставите курсор в поле Элементы списка и заносите туда через запятую наименования столбцов, как показано на рисунке выше. Нажимаем Добавить.
Так же можно воспользоваться полем Импорт списка из ячеек. Активируем поле выбора, щелкнув в нем мышкой. Выбираем диапазон ячеек со значениями, из которых хотим создать список. Жмем Импорт. В поле Списки появиться новый список из значений указанных ячеек.
Теперь остается проверить в действии. Пишем в любую ячейку слово Дата и протягиваем, как описано выше. Excel заполнил нам остальные столбцы значениями из того списка, который мы сами только что создали. Вы можете изменять и удалять, созданные Вами списки, добавлять новые.
Созданные пользователем списки доступны из любой книги на том ПК, на котором эти списки были созданы.
Так же см.:
[[Выпадающие списки]]
[[Связанные выпадающие списки]]
Статья помогла? Поделись ссылкой с друзьями!
Поиск по меткам
Дмитрий а можно в excel так чтобы когда заполняешь по рабочим дням выходило так:
13.10.2014
13.11.2014
15.12.2014
13.01.2015
.
то есть одно число 13 е в каждом месяце если в рабочие дни то 13 если в выходные чтобы excel перевел дату на рабочий день то есть 15(понедельник)и так далее
Стандартных методов не знаю.
а не стандартный метод какой нить легкий есть?
Легких путей не могу сейчас надумать. Только изобретать какую-то сложную формулу(совмещенную с РАБДЕНЬ). И то не факт, что вообще получится.
спс Дмитрий буду изобретать формулу))) дай Бог чтобы получилось
=ЕСЛИ(ДЕНЬНЕД(C6)=7;(C6)+0;(C6)+1) ИЛИ (ЕСЛИ(ДЕНЬНЕД(C6=6;(C6)+0;(C6)+1) попробовал эту формулу выдает ошибку слишком много аргументов для данной функции Дмитрий можно ли эту формулу упростить?
Дмитрий один вопрос как сделать так чтобы в таблице заполненной числами в одной ячейке округлить вверх в другой вниз чтобы это автоматом при перетаскивании заполнялось например:
первая ячейка: 200,50
вторая ячейка: 200,30
.
как в одной формуле это написать?
будет гораздо сложней много проблем связанных с длиной месяца и переходом через год. Нужны будут два столбца. А формула примерно такая
=ЕСЛИ(ДЕНЬНЕД(N5+ДЕНЬ(КОНМЕСЯЦА(N5;0)))=7;N5+ДЕНЬ(КОНМЕСЯЦА(N5;0))+2;ЕСЛИ(ДЕНЬНЕД(N5+ДЕНЬ(КОНМЕСЯЦА(N5;0)))=1;N5+ДЕНЬ(КОНМЕСЯЦА(N5;0))+1;N5+ДЕНЬ(КОНМЕСЯЦА(N5;0))))
«Если есть вопрос по проблеме в Excel- добро ПОЖАЛОВАТЬСЯ (?) на Форум. «
Елена, добрый день. А что смущает? Это не опечатка — так я специально написал. Есть проблема — жалуйтесь и просите помощи в форуме. В комментариях нет возможности все проблемы решать. Тем более на форуме более 2000 участников, а в комментарии смотрю практически только я.
Здравствуйте, подскажите как сохранить списки автозаполнения, чтоб при новой работе с нуля, создавая новую книгу, в ней уже были мои списки?
Если имеется ввиду возможность работы с созданными ранее списками после переустановки Excel — то никак.
Поделитесь своим мнением
Комментарии, не имеющие отношения к комментируемой статье, могут быть удалены без уведомления и объяснения причин. Если есть вопрос по личной проблеме — добро пожаловать на Форум
Департамент ИТ
При работе с таблицами Excel иногда возникает потребность заполнить большое количество ячеек определенными значениями, список которых заранее известен. Иногда для этого достаточного использовать функцию автозаполнения ячеек в excel. Но в случаях, когда количество возможных значений ячейки заметно меньше количества заполняемых ячеек, ввод каждого значения будет не оптимальным решением. Заметно быстрее будет создать выпадающий список и выбирать значение одним кликом мышки.
Для того, чтобы создать выпадающий список нужно создать источник данных со значениями для списка. Для этого на отдельном листе книги Excel создаем столбец с всеми нужными вариантами значений (Рис.1).
Теперь нужно выделить список значений (без заголовка) и на вкладке «Формулы», нажать кнопку «Присвоить имя» (Рис.2).
В появившемся окне заполняем поле «Имя» и жмем Ok (Рис.3).
Далее возвращаемся на лист с основными данными и выделяем ячейки, значения которых будут выбираться из выпадающего списка (Рис.4).
Теперь на вкладке «Данные» жмем кнопку «Проверка данных» (Рис.5).
В появившемся окне в поле «Тип данных» выбираем значение «Список», в поле «Источник:» вводим знак “=” (равно) и набираем имя списка назначенного нами на Рис.3. Далее жмем Ok (Рис.6).
Теперь, если вы выделите одну из ячеек, для которых создавался список, то справа от ячейки появится кнопка с маленьким треугольником. Нажав на этот треугольник вы увидите список значений для этой ячейки и сможете быстро выбрать нужное значение (Рис.7).
Как сделать выпадающий список в Excel
Если Вы заполняете таблицу в Excel, и данные в столбце могут иногда повторяться, например, название товара, или имя сотрудника, то, чтобы не вводить нужный параметр каждый раз, проще и легче один раз создать выпадающий список и выбирать из него значение.
В статье мы рассмотрим, как сделать выпадающие списки различного вида в таблице Эксель.
Создаем простой выпадающий список
Для этого, в ячейки А1:А7 вписываем данные, которые будут отображаться в списке. Теперь выделим ячейку, в которой создадим выпадающий список – В2 .
Переходим на вкладку «Данные» и кликаем по кнопочке «Проверка данных» .
На вкладке «Параметры» в поле «Тип данных» выбираем «Список» . В поле «Источник» можно ввести значения различными способами:
1 – вводим значения для списка вручную, через точку с запятой;
2 – указываем диапазон ячеек, в которые введены данные для выпадающего списка;
3 – выделяем ячейки с именами, кликаем по ним правой кнопкой мыши и выбираем из меню «Присвоить имя» .
Дальше впишите «Имя» для выделенных данных.
Выделяем ячейку В2 и в поле «Источник» ставим «=» , затем пишем созданное имя.
Таким образом, мы создали простой выпадающий список в Excel.
Если у Вас есть заголовок для столбца, и значениями нужно заполнять каждую строку, то выделите не одну ячейку, а диапазон ячеек – В2:В9 . Тогда можно будет выбирать из выпадающего списка нужное значение в каждой ячейке.
Добавляем значения в выпадающий список – динамический список
При этом мы будем дописывать значения в нужный диапазон, а они будут автоматически добавляться в выпадающий список.
Выделяем диапазон ячеек – D1:D8 , затем на вкладке «Главная» нажимаем «Форматировать как таблицу» и выбираем любой стиль.
Подтверждаем расположение данных и ставим галочку в поле «Таблица с заголовками» .
Вверху пишем заголовок таблицы – «Сотрудники» , и заполняем ее данными.
Выделяем ячейку, в которой будет выпадающий список и кликаем по кнопочке «Проверка данных» . В следующем окне, в поле «Источник» , пишем следующее: =ДВССЫЛ(«Таблица1[Сотрудники]») . У меня одна таблица на листе, поэтому пишу «Таблица1» , если будет вторая – «Таблица2» , и так далее.
Теперь добавим новое имя сотрудника в наш список: Ира. В выпадающем списке оно появилось. Если мы удалим любое имя из таблицы, из списка оно тоже удалится.
Выпадающий список со значениями с другого листа
Если таблица с выпадающими списками находится на одном листе, а данные для этих списков – на другом, то данная функция нам очень поможет.
На Листе 2, выделяем одну ячейку или диапазон ячеек, затем кликаем по кнопочке «Проверка данных» .
Переходим на Лист 1, ставим курсор в поле «Источник» и выделяем нужный диапазон ячеек.
Теперь можно дописывать имена на Листе 1, они будут добавляться в выпадающие списки на Листе 2.
Создаем зависимые выпадающие списки
Предположим, у нас есть три диапазона: имена, фамилии и отчества сотрудников. Для каждого, нужно присвоить имя. Выделяем ячейки оного диапазона, можно и пустые – в них со временем можно будет добавлять данные, которые будут появляться в выпадающем списке. Кликаем по ним правой кнопкой мыши и выбираем из списка «Присвоить имя» .
Первый называем «Имя» , второй – «Фамилия» , третий – «Отч» .
Сделаем еще один диапазон, в котором будут прописаны присвоенные имена. Назовем его «Сотрудники» .
Делаем первый выпадающий список, который будет состоять из названия диапазонов. Выделяем ячейку Е1 и на вкладке «Данные» выбираем «Проверка данных» .
В поле «Тип данных» выберите «Список» , в поле источник – или введите «=Сотрудники» , или выделите диапазон ячеек, которому присвоено имя.
Первый выпадающий список создан. Теперь в ячейке F2 создадим второй список, который должен зависеть от первого. Если в первом выберем «Имя» , во втором отобразится список имен, если выберем «Фамилия» – список фамилий.
Выделяем ячейку и кликаем по кнопочке «Проверка данных» . В поле «Тип данных» выбираем «Список» , в поле источник прописываем следующее: =ДВССЫЛ($Е$1) . Здесь Е1 – это ячейка с первым выпадающим списком.
По такому принципу можно делать зависимые выпадающие списки.
Если в дальнейшем, нужно будет вписать значения в диапазон, которому задано имя, например, «Фамилия» . Перейдите на вкладку «Формулы» и кликните «Диспетчер имен» . Теперь в имени диапазона выбираем «Фамилия» , и внизу, вместо последней ячейки С3 , напишите С10 . Нажмите галочку. После этого диапазон увеличится, и в него можно будет дописывать данные, которые автоматически будут появляться в выпадающем списке.
Теперь Вы знаете, как сделать раскрывающийся список в Excel.