Как сделать выпадающий список в excel английская версия?

Задача: сделать в ячейке D2 выпадающий список, чтобы пользователь мог выбирать имена из списка (столбец А). Если нужного имени нет в списке, то пользователь может ввести новое имя прямо в ячейку D2 — оно автоматически добавится к столбцу А и начнет отображаться в выпадающем списке в будущем. Вот так примерно:

Шаг 1. Создаем именованный диапазон

Сначала создадим именованный диапазон, указывающий на заполненные именами ячейки в столбце А — сколько бы имен в списке не находилось. Для этого:

  • в Excel 2007 и новее — жмем на вкладке Формулы (Formulas) кнопку Диспетчер имен (Name Manager) и затем Создать (New)
  • в Excel 2003 идем в меню Вставка — Имя — Присвоить (Insert — Name — Define)

Затем вводим имя диапазона (допустим People) и в строку Ссылка (Reference) вводим следующую формулу:

=СМЕЩ(Лист1!$A$1;0;0;СЧЁТЗ(Лист1!$A$1:$A$24);1)

в английской версии Excel это будет:

=OFFSET(Лист1!$A$1,0,0,COUNTA(Лист1!$A$1:$A$24),1)

Эта формула ссылается на все заполненные ячейки в столбце А, начиная с А1 и вниз до конца — до последнего имени.

Шаг 2. Создаем выпадающий список в ячейке

Выделяем ячейку D2 и

  • в Excel 2007 и новее — жмем на вкладке Данные (Data) кнопку Проверка данных (Data Validation) 
  • в Excel 2003 и старше — выбираем в меню Данные — Проверка (Data — Validation).

Далее выбираем из выпадающего списка Тип данных (Allow) позицию Список (List) и вводим в строку Источник (Source) ссылку на созданный на шаге 1 именованный диапазон (не забудьте перед именем диапазона поставить знак равенства!):

Чтобы Excel позволил нам в будущем ввести в список и новые имена, снимем галочки на вкладках Сообщение для ввода (Input Message) и Сообщение об ошибке (Error Alert) и нажмем ОК. Теперь у нас есть выпадающий список в ячейке D2. Причем, если, например, вручную дописать новое имя в столбце А, то оно автоматически появится в выпадающем списке в ячейке D2, поскольку имена берутся из динамического диапазона People, который автоматически отслеживает изменения в столбце А.

Шаг 3. Добавляем простой макрос

Щелкаем правой кнопкой мыши по ярлычку нашего листа и выбираем Исходный текст (View Source). Откроется модуль листа в редакторе Visual Basic, куда надо скопировать такой код:

Private Sub Worksheet_Change(ByVal Target As Range)    Dim lReply As Long        If Target.Cells.Count > 1 Then Exit Sub      If Target.Address = "$D$2" Then       If IsEmpty(Target) Then Exit Sub         If WorksheetFunction.CountIf(Range("People"), Target) = 0 Then            lReply = MsgBox("Добавить введенное имя " & _                           Target & " в выпадающий список?", vbYesNo + vbQuestion)            If lReply = vbYes Then                Range("People").Cells(Range("People").Rows.Count + 1, 1) = Target            End If         End If       End If  End Sub  

Если Ваш выпадающий список находится не в ячейке D2 или Вы назвали диапазон с именами не People, а как-то еще, то подправьте эти параметры в макросе на свои.

Всё! Теперь при попытке ввести новое имя в ячейку D2 Excel будет спрашивать

… и при утвердительном ответе пользователя автоматически добавлять новое имя к списку в столбце А и в выпадающий список в ячейку D2.

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

  • 4 способа создать выпадающий список в ячейке листа
  • Как создать список из которого будут автоматически удаляться использованные элементы
  • Автоматическое создание списка при помощи надстройки PLEX
  • Связанные выпадающие списки (от того, что выбрано в первом — зависит содержимое второго)
  • Выпадающий список для выбора изображений (фотографий товаров, сотрудников и т.д.)

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

  1. Находим уже имеющийся список и добавляем в него одну или несколько позиций.
  2. Так как у нашего диапазона со списком уже есть имя «список», необходимо включить в него новые данные, в Excel 2007 и новее переходим на вкладку Формулы → Диспетчер имен → и выбираем имя таблицы которую нужно изменить:     

    Для Excel 2003 или старше

    выбираем в меню Вставка → Имя → Присвоить

  3. Нажимаем «изменить» → в открывшемся окне меняем диапазон данных → и нажимаем «ок»

Закрываем окно диспетчера имен и Готово!

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

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

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

Если вы уже ввели в столбце определенные значения и вам необходимо в следующую ячейку внести какое-либо значение из предыдущих, то достаточно нажать горячие клавиши Alt+стрелка_вниз – появится выпадающий список из значений которые вы вводили выше.

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

1. Выпадающий список состоит только из элементов, которые вы уже вносили

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

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

как сделать выпадающий список в excel английская версия

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

В Excel 2007/2010 Данные | Работа с данными | Проверка данных (смотрите рисунок ниже)

как сделать выпадающий список в excel английская версия

В Excel 2003 вам необходимо перейти в раздел Данные | Проверка (смотрите рисунок)

как сделать выпадающий список в excel английская версия

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

как сделать выпадающий список в excel английская версия

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

как сделать выпадающий список в excel английская версия

Аналогично поступим с городами, но теперь источник укажем в виде именованного диапазона. Для этого выделим исходный диапазон H5:H9, после этого перейдем в поле имени (смотрите рисунок) и присвоим данному диапазону имя: города (имя должно начинаться с буквы и не должно содержать пробелы), обязательно нажимаем после этого Enter.

как сделать выпадающий список в excel английская версия

В дальнейшем для редактирования именованного диапазона вы можете использовать диспетчер имен. Который находится в разделе Формулы | Определенные имена | Диспетчер имен

как сделать выпадающий список в excel английская версия

После этого становимся во вторую желтую ячейку C4, выбираем  Данные | Работа с данными | Проверка данных, в раскрывающимся списке выбираем список, а в качестве источника указываем =города. Нажимаем Ок – получаем выпадающий список с использованием именованного диапазона.

как сделать выпадающий список в excel английская версия

В разделе Видео Уроки Вы можете найти Видео на эту тему.

Спасибо за внимание.