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 имеется возможность автоматизировать ввод таких данных. Для этого предусмотрена функция автозаполнения ячеек. Посмотрим, как она работает.
Работа автозаполнения в Эксель
Автозаполнение в Microsoft Excel осуществляется с помощью специального маркера заполнения. Для того, чтобы вызвать этот инструмент нужно навести курсор на нижний правый край любой ячейки. Появится небольшой черный крестик. Это и есть маркер заполнения. Нужно просто зажать левую кнопку мыши и потянуть в ту сторону листа, где вы хотите заполнить ячейки.
То, как будут заполняться ячейки, уже зависит от того типа данных, который находится в исходной ячейке. Например, если там будет обычный текст в виде слов, то при перетягивании с помощью маркера заполнения производится его копирование в другие ячейки листа.
Автозаполнение ячеек числами
Чаще всего автозаполнение используется для ввода большого массива чисел, которые следуют по порядку. Например, в определенной ячейке стоит цифра 1, а нам нужно пронумеровать ячейки от 1 до 100.
- Активируем маркер заполнения и проводим им вниз на необходимое количество ячеек.
- Но, как видим, во все ячейки скопировалась только единица. Кликаем на значок, который находится снизу слева от заполненной области и называется «Параметры автозаполнения».
- В открывшемся списке устанавливаем переключатель в пункт «Заполнить».
Как видим, после этого весь нужный диапазон заполнился числами по порядку.
Но можно сделать ещё проще. Вам не нужно будет вызывать параметры автозаполнения. Для этого, когда тянете маркер заполнения вниз, то кроме зажатой левой кнопки мыши, нужно зажать ещё кнопку Ctrl на клавиатуре. После этого, заполнение ячеек числами по порядку происходит сразу же.
Существует также способ сделать автозаполнения ряда прогрессии.
- Вносим в соседние ячейки два первых числа прогрессии.
- Выделяем их. С помощью маркера заполнения вносим данные в другие ячейки.
- Как видим, создается последовательный ряд чисел с заданным шагом.
Инструмент «Заполнить»
В программе Excel есть также отдельный инструмент, которые называется «Заполнить». Расположен он на ленте во вкладке «Главная» в блоке инструментов «Редактирование».
- Заносим данные в любую ячейку, а затем выделяем её и диапазон ячеек, который собираемся заполнить.
- Жмем на кнопку «Заполнить». В появившемся списке выбираем то направление, в которои следует заполнить ячейки.
- Как видим, после этих действий данные из одной ячейки были скопированы во все остальные.
С помощью данного инструмента можно также заполнить ячейки прогрессией.
- Заносим число в ячейку и выделяем диапазон ячеек, который будет заполняться данными. Жмем на кнопку «Заполнить», а в появившемся списке выбираем пункт «Прогрессия».
- Открывается окно настройки прогрессии. Здесь нужно произвести ряд манипуляций:
- выбрать расположение прогрессии (по столбцам или по строкам);
- тип (геометрическая, арифметическая, даты, автозаполнение);
- установить шаг (по умолчанию он равен 1);
- установить предельное значение (необязательный параметр).
Кроме того, в отдельных случаях, устанавливаются единицы измерения.
Когда все настройки внесены, жмем на кнопку «OK».
- Как видим, после этого весь выделенный диапазон ячеек заполняется согласно установленными вами правилами прогрессии.
Автозаполнение формулами
Одним из основных инструментов Excel являются формулы. При наличии в таблице большого числа одинаковых формул можно также воспользоваться функцией автозаполнения. Суть не меняется. Нужно тем же способом маркера заполнения скопировать формулу в другие ячейки. При этом, если в формуле содержатся ссылки на другие ячейки, то по умолчанию при копировании таким способом координаты их меняются по принципу относительности. Поэтому, такие ссылки называют относительными.
Если вы хотите, чтобы при автозаполнении адреса стали фиксированными, то нужно в исходной ячейке перед координатами строк и столбцов поставить знак доллара. Такие ссылки называются абсолютными. Затем, производится обычная процедура автозаполнения с помощью маркера заполнения. Во всех заполненных таким способом ячейках формула будет абсолютно неизменная.
Урок: Абсолютные и относительные ссылки в Excel
Автозаполнение другими значениями
Кроме того, в программе Excel предусмотрено автозаполнение другими значениями по порядку. Например, если вы введете какую-нибудь дату, а затем, воспользовавшись маркером заполнения, выделите другие ячейки, то весь выбранный диапазон окажется заполненный датами в строгой последовательности.
Точно так же, можно произвести автозаполнение по дням недели (понедельник, вторник, среда…) или по месяцам (январь, февраль, март…).
Более того, если в тексте будет любая цифра, то Эксель распознает её. При использовании маркера заполнения произойдет копирование текста с изменением цифры по нарастающей. Например, если вы запишите в ячейку выражение «4 корпус», то в других ячейках, заполненных с помощью маркера заполнения, это название преобразится в «5 корпус», «6 корпус», «7 корпус» и т.д.
Добавление собственных списков
Возможности функции автозаполнения в Excel не ограничивается определенными алгоритмами или предустановленными списками, такими как, например, дни недели. При желании пользователь может в программу добавить свой личный список. Тогда, при записи в ячейку любого слова из элементов, которые находятся в перечне, после применения маркера заполнения, данным списком будет заполнен весь выделенный диапазон ячеек. Для того, чтобы добавить свой список, нужно выполнить такую последовательность действий.
- Делаем переход во вкладку «Файл».
- Переходим в раздел «Параметры».
- Далее, перемещаемся в подраздел «Дополнительно».
- В блоке настроек «Общие» в центральной части окна жмем на кнопку «Изменить списки…».
- Открывается окно списков. В левой его части расположены уже имеющиеся списки. Для того, чтобы добавить новый список записываем нужные слова в поле «Элементы списка». Каждый элемент должен начинаться с новой строки. После того, как все слова записаны, жмем на кнопку «Добавить».
- После этого, окно списков закроется, а при повторном его открытии пользователь сможет увидеть те элементы, которые он добавлял уже в окне активных списков.
- Теперь, после того, как вы в любую ячейку листа внесете слово, которое являлось одним из элементов добавленного списка, и примените маркер заполнения, выделенные ячейки будут заполнены символами из соответствующего списка.
Как видим, автозаполнение в Экселе является очень полезным и удобным инструментом, который позволяет значительно сэкономить время на добавлении одинаковых данных, повторяющихся списков, и т.д. Преимуществом этого инструмента является и то, что он настраиваемый. В него можно вносить новые списки или изменять старые. Кроме того, с помощью автозаполнения можно произвести быстрое заполнение ячеек различными видами математических прогрессий.
Содержание
- 1 Создание раскрывающегося списка
- 2 Выпадающий список в Excel с подстановкой данных
- 3 Выпадающий список в Excel с данными с другого листа/файла
- 4 Как сделать зависимые выпадающие списки
- 5 Выпадающий список с поиском
- 6 Нумерация
- 6.1 Способ 1: заполнение первых двух строк
- 6.2 Способ 2: использование функции
- 6.3 Способ 3: использование прогрессии
- 6.4 Помогла ли вам эта статья?
- 7 Способ 1 — горячие клавиши и раскрывающийся список в excel
- 8 Способ 2 — самый удобный, простой и наиболее гибкий
- 9 Способ 3 — как в excel сделать выпадающий список с использованием ActiveX
Добрый день уважаемый друг!
В этой статье я хочу осветить ответ на вопрос: «Как делается быстрая нумерация строк в Excel?». Поскольку в MS Excel списки не редкость, а скорее основа основ, так как все данные для анализа берутся с ваших списков. А если есть список, было бы неплохо его пронумеровать, так как номер строки является неким ключом необходимый для дальнейшего анализа, а желательно чтобы производилась автоматическая нумерация списков.
На данный момент можно выделить 5 способов как происходит нумерация строк в Excel:
- Это когда вы вручную долго и муторно набираете, надо в каждую ячейку вбивать нужную вам циферку списка, если вы хотите использовать данный способ делайте в том случае когда в списке не более 10 пунктов;
- Этот способ заключается в простой протяжке ячейки, так производится автоматическая нумерация. Хорошо конечно, но когда вам прийдется вставлять дополнительные строки, нумерацию вам прийдется снова перетягивать на весь диапазон, аналогично созданию пользовательского списка. Всю процедуру протягивания необходимо производить при зажатой кнопке Ctrl;
- Третьим вариантом будет нумерация с помощью формулы «=А4+1», эта простая формула берет вышестоящее значение и прибавляет к нему 1. Как итог, получаем пронумерованный список любой длины всего за несколько секунд. Даже когда вам нужно добавить пару строк в диапазон списка, то простая протяжка формулы на месте вставки и всё прекрасно работает и радует глаз;
- Можно усовершенствовать формулу сделав так что вертикальная нумерация строк привязалась к горизонтальной и тогда ссылка станет абсолютной. Горизонтальную нумерацию делаем при помощи функции СТОЛБЕЦ, а вертикальную при помощи функции СТРОКА, в итоге формула списка приобретёт следующий вида: =СТРОКА() -СТРОКА($A$4);
- Ну и на закусочку можно поговорить о том как получается интеллектуальная нумерация. Для этого используем формулу следующего вида: =ЕСЛИ(ЕПУСТО(B4);»»;СЧЁТЗ($B$4:B4)). С формулы вы видите что логическая функция ЕСЛИ проверяет пустой или заполненный список. При пустом значении ячейка не заполняется, а вот при заполненной, функция СЧЁТЗ возвращает значение +1, увеличивая тем самым номер списка. Огромным преимуществом становится то, что при делении значения список сам перестраивается игнорируя пустые поля и у вас получается автоматическая нумерация в Excel.
Вот мы и рассмотрели способы как происходит автоматическая нумерация в Excel, надеюсь данная информация вам поможет и облегчит вашу работу в MS Excel. Совместно с нумерацией списков, очень удобно использовать закрепление области в Excel, что позволит усовершенствовать вашу работу. Если у вас есть дополнительная информация пишите в комментариях свои предложения. Ставьте лайки если статья вам понравилась!
Скачать пример можно здесь.
Не забудьте поблагодарить автора!
Деньгам по-пустому лежать не надлежит.
Александр Васильевич Суворов
Статья помогла? Поделись ссылкой с друзьями, твитни или лайкни!
Под выпадающим списком понимается содержание в одной ячейке нескольких значений. Когда пользователь щелкает по стрелочке справа, появляется определенный перечень. Можно выбрать конкретное.
Очень удобный инструмент Excel для проверки введенных данных. Повысить комфорт работы с данными позволяют возможности выпадающих списков: подстановка данных, отображение данных другого листа или файла, наличие функции поиска и зависимости.
Создание раскрывающегося списка
Путь: меню «Данные» — инструмент «Проверка данных» — вкладка «Параметры». Тип данных – «Список».
Ввести значения, из которых будет складываться выпадающий список, можно разными способами:
- Вручную через «точку-с-запятой» в поле «Источник».
- Ввести значения заранее. А в качестве источника указать диапазон ячеек со списком.
- Назначить имя для диапазона значений и в поле источник вписать это имя.
Любой из вариантов даст такой результат.
Необходимо сделать раскрывающийся список со значениями из динамического диапазона. Если вносятся изменения в имеющийся диапазон (добавляются или удаляются данные), они автоматически отражаются в раскрывающемся списке.
- Выделяем диапазон для выпадающего списка. В главном меню находим инструмент «Форматировать как таблицу».
- Откроются стили. Выбираем любой. Для решения нашей задачи дизайн не имеет значения. Наличие заголовка (шапки) важно. В нашем примере это ячейка А1 со словом «Деревья». То есть нужно выбрать стиль таблицы со строкой заголовка. Получаем следующий вид диапазона:
- Ставим курсор в ячейку, где будет находиться выпадающий список. Открываем параметры инструмента «Проверка данных» (выше описан путь). В поле «Источник» прописываем такую функцию:
Протестируем. Вот наша таблица со списком на одном листе:
Добавим в таблицу новое значение «елка».
Теперь удалим значение «береза».
Осуществить задуманное нам помогла «умная таблица», которая легка «расширяется», меняется.
Теперь сделаем так, чтобы можно было вводить новые значения прямо в ячейку с этим списком. И данные автоматически добавлялись в диапазон.
- Сформируем именованный диапазон. Путь: «Формулы» — «Диспетчер имен» — «Создать». Вводим уникальное название диапазона – ОК.
- Создаем раскрывающийся список в любой ячейке. Как это сделать, уже известно. Источник – имя диапазона: =деревья.
- Снимаем галочки на вкладках «Сообщение для ввода», «Сообщение об ошибке». Если этого не сделать, Excel не позволит нам вводить новые значения.
- Вызываем редактор Visual Basic. Для этого щелкаем правой кнопкой мыши по названию листа и переходим по вкладке «Исходный текст». Либо одновременно нажимаем клавиши Alt + F11. Копируем код (только вставьте свои параметры).
- Сохраняем, установив тип файла «с поддержкой макросов».
- Переходим на лист со списком. Вкладка «Разработчик» — «Код» — «Макросы». Сочетание клавиш для быстрого вызова – Alt + F8. Выбираем нужное имя. Нажимаем «Выполнить».
Когда мы введем в пустую ячейку выпадающего списка новое наименование, появится сообщение: «Добавить введенное имя баобаб в выпадающий список?».
Нажмем «Да» и добавиться еще одна строка со значением «баобаб».
Выпадающий список в Excel с данными с другого листа/файла
Когда значения для выпадающего списка расположены на другом листе или в другой книге, стандартный способ не работает. Решить задачу можно с помощью функции ДВССЫЛ: она сформирует правильную ссылку на внешний источник информации.
- Делаем активной ячейку, куда хотим поместить раскрывающийся список.
- Открываем параметры проверки данных. В поле «Источник» вводим формулу: =ДВССЫЛ(“Лист1!$A$1:$A$9”).
Имя файла, из которого берется информация для списка, заключено в квадратные скобки. Этот файл должен быть открыт. Если книга с нужными значениями находится в другой папке, нужно указывать путь полностью.
Как сделать зависимые выпадающие списки
Возьмем три именованных диапазона:
Это обязательное условие. Выше описано, как сделать обычный список именованным диапазоном (с помощью «Диспетчера имен»). Помним, что имя не может содержать пробелов и знаков препинания.
- Создадим первый выпадающий список, куда войдут названия диапазонов.
- Когда поставили курсор в поле «Источник», переходим на лист и выделяем попеременно нужные ячейки.
- Теперь создадим второй раскрывающийся список. В нем должны отражаться те слова, которые соответствуют выбранному в первом списке названию. Если «Деревья», то «граб», «дуб» и т.д. Вводим в поле «Источник» функцию вида =ДВССЫЛ(E3). E3 – ячейка с именем первого диапазона.
- Создаем стандартный список с помощью инструмента «Проверка данных». Добавляем в исходный код листа готовый макрос. Как это делать, описано выше. С его помощью справа от выпадающего списка будут добавляться выбранные значения.
- Чтобы выбранные значения показывались снизу, вставляем другой код обработчика.
- Чтобы выбираемые значения отображались в одной ячейке, разделенные любым знаком препинания, применим такой модуль.
Не забываем менять диапазоны на «свои». Списки создаем классическим способом. А всю остальную работу будут делать макросы.
Выпадающий список с поиском
- На вкладке «Разработчик» находим инструмент «Вставить» – «ActiveX». Здесь нам нужна кнопка «Поле со списком» (ориентируемся на всплывающие подсказки).
- Щелкаем по значку – становится активным «Режим конструктора». Рисуем курсором (он становится «крестиком») небольшой прямоугольник – место будущего списка.
- Жмем «Свойства» – открывается перечень настроек.
- Вписываем диапазон в строку ListFillRange (руками). Ячейку, куда будет выводиться выбранное значение – в строку LinkedCell. Для изменения шрифта и размера – Font.
Скачать пример выпадающего списка
При вводе первых букв с клавиатуры высвечиваются подходящие элементы. И это далеко не все приятные моменты данного инструмента. Здесь можно настраивать визуальное представление информации, указывать в качестве источника сразу два столбца.
Часто при создании таблиц в Экселе выделяют отдельную колонку, в которой для удобства пользования указывают номера строк. Если таблица не слишком длинная, то не составляет большой проблемы выполнить нумерацию вручную, вводя цифры с клавиатуры. Но, что делать, если она имеет не один десяток, а то и не одну сотню строк? В этом случае, на помощь приходит автоматическая нумерация. Давайте выясним, как сделать автоматическую нумерацию в программе Microsoft Excel.
Нумерация
Программа Microsoft Excel предоставляет пользователям сразу несколько способов автоматической нумерации строк. Одни из них максимально просты, как в выполнении, так и в функционале, а другие – более сложные, но и заключают в себе большие возможности.
Способ 1: заполнение первых двух строк
Первый способ предполагает ручное заполнение первых двух строк числами.
- В выделенной под нумерацию колонке первой строки ставим цифру – «1», во второй (той же колонки) – «2».
- Выделяем эти две заполненные ячейки. Становимся на нижний правый угол самой нижней из них. Появляется маркер заполнения. Кликаем левой кнопкой мыши и с зажатой кнопкой, протягиваем его вниз до конца таблицы.
Как видим, нумерация строчек автоматически заполнилась по порядку.
Этот метод довольно легкий и удобный, но он хорош только для относительно небольших таблиц, так как тянуть маркер по таблице в несколько сотен, а то и тысяч строк, все-таки затруднительно.
Способ 2: использование функции
Второй способ автоматического заполнения предусматривает использование функции «СТРОКА».
- Выделяем ячейку, в которой будет находиться цифра «1» нумерации. Вводим в строку для формул выражение «=СТРОКА(A1)».Кликаем по клавише ENTER на клавиатуре.
- Как и в предыдущем случае, копируем с помощью маркера заполнения формулу в нижние ячейки таблицы данного столбца. Только в этот раз выделяем не две первые ячейки, а только одну.
Как видим, нумерация строк и в этом случае расположилась по порядку.
Но, по большому счету, этот способ мало чем отличается от предыдущего и не решает проблему с потребностью тащить маркер через всю таблицу.
Способ 3: использование прогрессии
Как раз третий способ нумерации с использованием прогрессии подойдет для длинных таблиц с большим количеством строк.
- Первую ячейку нумеруем самым обычным способом, вписав туда цифру «1» с клавиатуры.
- На ленте в блоке инструментов «Редактирование», который расположен во вкладке «Главная», жмем на кнопку «Заполнить». В появившемся меню кликаем по пункту «Прогрессия».
- Открывается окно «Прогрессия». В параметре «Расположение» нужно установить переключатель в позицию «По столбцам». Переключатель параметра «Тип» должен находиться в позиции «Арифметическая». В поле «Шаг» нужно установить число «1», если там установлено другое. Обязательно заполните поле «Предельное значение». Тут следует указать количество строк, которые нужно пронумеровать. Если данный параметр не заполнен, автоматическая нумерация произведена не будет. В конце следует нажать на кнопку «OK».
Как видим, поле этого все строки вашей таблицы будут пронумерованы автоматически. В этом случае даже ничего перетягивать не придется.
Как альтернативный вариант можно использовать следующую схему этого же способа:
- В первой ячейке поставить цифру «1», а затем выделить весь диапазон ячеек, которые вы хотите пронумеровать.
- Вызвать окно инструмента «Прогрессия» тем же способом, о котором мы говорили выше. Но на этот раз ничего вводить или изменять не нужно. В том числе, вводить данные в поле «Предельное значение» не придется, так как нужный диапазон уже выделен. Достаточно просто нажать на кнопку «OK».
Данный вариант хорош тем, что вам не придется прикидывать, из скольких строк состоит таблица. В то же время, вам нужно будет выделять все ячейки столбца с номерами, а это значит, что мы возвращаемся к тому же, что было при использовании первых способов: к необходимости прокручивать таблицу до самого низа.
Как видим, существует три основных способа автоматической нумерации строк в программе. Из них наибольшую практическую ценность имеет вариант с нумерацией первых двух строк с последующим копированием (как самый простой) и вариант с использованием прогрессии (из-за возможности работать с большими таблицами).
Мы рады, что смогли помочь Вам в решении проблемы.
Задайте свой вопрос в комментариях, подробно расписав суть проблемы. Наши специалисты постараются ответить максимально быстро.
Помогла ли вам эта статья?
Да Нет
Для таблиц, которые используют постоянные и повторяющиеся данные (например фамилии сотрудников, номенклатура товара или процент скидки для клиента) чтобы не держать в голове и не ошибиться при наборе, существует возможность один раз создать стандартный список и при подстановке данных делать выборку из него. Данная статья позволит вам использовать 4 разных способа как в экселе сделать выпадающий список.
Способ 1 — горячие клавиши и раскрывающийся список в excel
Данный способ использования выпадающего списка по сути не является инструментом таблицы, который надо как либо настраивать или заполнять. Это встроенная функция (горячие клавиши) которая работает всегда. При заполнении какого либо столбца, вы можете нажать правой кнопкой мыши на пустой ячейке и в выпадающем списке выбрать пункт меню «Выбрать из раскрывающегося списка».
Этот же пункт меню можно запустить сочетанием клавиш Alt+»Стрелка вниз» и программа автоматически предложит в выпадающем списке значения ячеек, которые вы ранее заполняли данными. На изображении ниже программа предложила 4 варианта заполнения (дублирующиеся данные Excel не показывает). Единственное условие работы данного инструмента — это между ячейкой, в которую вы вводите данные из списка и самим списком не должно быть пустых ячеек.
Использование горячих клавиш для раскрытия выпадающего списка данных
При чем список для заполнения таким способом работает как в ячейке снизу, так и в ячейке сверху. Для верхней ячейки программа возьмет содержание списка из нижних значений. И опять же не должно быть пустой ячейки между данными и ячейкой для ввода.
Выпадающий список может работать и в верхней части с данными, которые ниже ячейки
Способ 2 — самый удобный, простой и наиболее гибкий
Данный способ предполагает создание отдельных данных для списка. При чем данные могут находится как на листе с таблицей, так и на другом листе файла Excel.
- Сперва необходимо создать список данных, который будет источником данных для подстановки в выпадающий список в excel. Выделите данные и нажмите правой кнопкой мыши. В выпадающем списке выберите пункт «Присвоить имя…».
Создание набора данных для списка
- В окне «Создание имени» задайте имя для вашего списка (это имя дальше будет использоваться в формуле подстановки). Имя должно быть без пробелов и начинаться с буквы.
Введите имя для набора данных
- Выделите ячейки (можно сразу несколько ячеек), в которых планируется создать выпадающий список. Во вкладке «ДАННЫЕ» вверху документа нажмите на «Проверка данных».
Создать выпадающий список можно сразу для нескольких ячеек
- В окне проверка вводимых значение в качестве типа данных задайте «Список». В строке «Источник:» введите знак равно и имя для ранее созданного списка. Данная формула позволит ввести значения только из списка, т.е. произведет проверку введенного значения и предложит варианты. Эти варианты и будут выпадающим списком.
Для создания проверки вводимых значений введите имя ранее созданного списка
При попытке ввести значение, которого нет в заданном списке, эксель выдаст ошибку.
Кроме списка можно вводить данные вручную. Если введенные данные не совпадут с одним из данных — программа выдаст ошибку
А при нажатии на кнопку выпадающего списка в ячейке вы увидите перечень значений из созданного ранее.
Способ 3 — как в excel сделать выпадающий список с использованием ActiveX
Чтобы воспользоваться этим способом, необходимо чтобы у вас была включена вкладка «РАЗРАБОТЧИК». По умолчанию эта вкладка отсутствует. Чтобы ее включить:
- Нажмите на «Файл» в левом верхнем углу приложения.
- Выберите пункт «Параметры» и нажмите на него.
- В окне настройки параметров Excel во вкладке «Настроить ленту» поставьте галочку напротив вкладки «Разработчик».
Включение вкладки «РАЗРАБОТЧИК»
Теперь вы сможете воспользоваться инструментом «Поле со списком (Элемент ActiveX)». Во вкладке «РАЗРАБОТЧИК» нажмите на кнопку «Вставить» и найдите в элементах ActiveX кнопку «Поле со списком (Элемент ActiveX)». Нажмите на нее.
Нарисуйте данный объект в excel выпадающий список в ячейке, где вам необходим выпадающий список.
Теперь необходимо настроить данный элемент. Чтобы это сделать, необходимо включить «Режим конструктора» и нажать на кнопку «Свойства». У вас должно открыться окно свойств (Properties).
С открытым окном свойств нажмите на ранее созданный элемент «Поле со списком». В списке свойств очень много параметров для настройки и вы сможете изучив их, настроить очень много начиная от отображения списка до специальных свойств данного объекта.
Но нас на этапе создания интересуют только три основных:
- ListFillRange — указывает диапазон ячеек, из которых будут браться значения для выпадающего списка. В моем примере я указал два столбца (A2:B7 — дальше покажу как это использовать). Если необходимо только одни значения указывается A2:A7.
- ListRows — количество данных в выпадающем списке. Элемент ActiveX отличается от первого способа тем, что можно указать большое количество данных.
- ColumnCount — указывает сколько столбцов данных указывать в выпадающем списке.
В строке ColumnCount я указал значение 2 и теперь в списке выпадающие данные выглядят вот так:
Как видите получился выпадающий список в excel с подстановкой данных из второго столбца с данными «Поставщик».
Программа Excel позволяет не только обрабатывать большие объемы данных, но и благодаря различным инструментам и функциям, делать это максимально быстро и эффективно. В данной статье мы разберем, каким образом работает автозаполнение ячеек данными.
-
Принцип работы автозаполнения
- Автоматическое заполнение числами
- Использование функции “Заполнить”
-
Автозаполнение ячеек формулами/функциями
- Другие виды автозаполнения
- Создаем собственные списки
- Заключение
Принцип работы автозаполнения
Для того, чтобы выполнить автозаполнение в Эксель нужно использовать так называемый маркер заполнения. Делается это достаточно просто:
- Наводим указатель мыши на нижний правый угол ячейки, информацию из которой хотим размножить.
- Должен появиться черный плюсик, который и является маркером заполнения. Зажав левую кнопку мыши тянем его вниз/вверх/вправо/влево – в зависимости от того, какое направление нам нужно (в нашем случае – вниз).
- Остановившись на ячейке, до которой хотим выполнить автозаполнение, отпускаем кнопку.
Примечание: заполнение ячеек с помощью маркера зависит от того, какие данные содержатся в исходной. В нашем случае это текстовое значение, которое было просто скопировано.
Автоматическое заполнение числами
Одним из самых распространенных примеров применения автозаполнения является ввод подряд идущих чисел. Допустим, нам нужно выполнить нумерацию от 1 до 25. Чтобы не вводить значения вручную, делаем так:
- Пишем в самой верхней ячейке будущего списка единицу. Затем по описанному выше принципу воспользуемся маркером заполнения, протянув его вниз на 25 строк.
- В результате, во всех ячейках получаем цифру 1. После этого щелкаем на появившийся значок справа от заполненного диапазона и в предложенном перечне выбираем команду “Заполнить”.
- Всего в несколько кликов нам удалось автоматически ввести в выделенные ячейки числа от 1 до 25, что и требовалось.
Альтернативный способ
Во время протягивания маркера заполнения вниз вместе с зажатой левой копкой мыши, также, удерживаем клавишу Ctrl. Рядом с привычным значком в виде черного плюсика при этом должен появиться еще один плюсик поменьше – слева и сверху.
После этого числа сразу же заполнятся по порядку, и необходимость использовать меню с параметрами автозаполнения отпадает.
Заполнение значений математической прогрессии
С помощью автозаполнения можно максимально быстро составить ряд прогрессии, правда, только арифметической.
- Печатаем в начальной ячейке будущего ряда первое числовое значение, в соседней – второе число с учетом шага прогрессии.
- Выделив обе ячейки воспользуемся маркером заполнения, который появится внизу последней (в нашем случае – нижней).
- Все готово, мы продолжили ряд арифметической прогрессии с заданным шагом, равным двум.
Примечание: Если в первых двух ячейках указать числа 1 и 2, то мы получим еще один способ заполнения числовых значений по порядку (прогрессия с разностью – один).
Использование функции “Заполнить”
Выполнить автозаполнение в Excel можно с помощью специального инструмента “Заполнить”. Алгоритм действий следующий:
- Вносим информацию в исходную ячейку. После этого любым удобным способом (например, с помощью зажатой левой кнопки мыши) выделяем область ячеек, к которой хотим применить автозаполнение.
- В группе инструментов “Редактирование” главной вкладки щелкаем по значку в виде стрелке вниз (это и есть функция “Заполнить”). Откроется перечень возможных вариантов, среди которых выбираем тот, который нужен (“вниз” в нашем примере).
- Получаем автоматически заполненный диапазон ячеек.
Заполнение ряда прогрессии
С помощью функции “Заполнить” можно, в т.ч., продолжить ряд прогрессии:
- Как и в алгоритме выше, указываем в начальной ячейке первое значение. Затем выделяем требуемый диапазон, кликаем по инструменту “Заполнить” и останавливаемся на варианте “Прогрессия”.
- Настраиваем параметры прогрессии в появившемся окошке:
- т.к. мы изначально выполнили выделение, уже сразу выбрано соответствующее расположение, однако, его можно изменить при желании.
- выбираем тип прогрессии: арифметическая, геометрическая, даты, автозаполнение. На этот раз остановимся на геометрической.
- указываем желаемый шаг.
- заполняем предельное значение. Не обязательно – если заранее был выбран диапазон. В противном случае, указать конкретное число необходимо.
- в некоторых ситуациях требуется выбрать единицу измерения.
- когда все параметры выставлены, жмем OK.
- Все готово, мы получили ряд чисел геометрической прогрессии с учетом выполненных настроек.
Автозаполнение ячеек формулами/функциями
Еще один распространенный пример использования автозаполнения – быстрое копирование формул/функции. При это учитываются относительные и абсолютные ссылки, содержащиеся в исходной ячейке.
Допустим, у нас есть перечень товаров, их стоимость и продажи в шт. Необходимо посчитать итоговую выручку по каждой позиции:
- В первой ячейке результирующего столбца пишем формулу в виде произведения цены на количество проданных штук. В нашей таблице – ставим знак “=” (любая формула должна начинаться со знака “равно”) и перемножаем соответствующие ячейки:
=B2*C2
.Подробнее с выполнением данного действия можно ознакомиться в нашей публикации – “Как умножать в Экселе: числа, ячейки, столбцы, формула, функция”. - Нажав клавишу Enter на клавиатуре получаем результат. Теперь остается только воспользоваться маркером заполнения, чтобы растянуть/скопировать формулу на оставшиеся строки.
- Расчет выручки по каждому товару готов.Выбрав произвольную ячейку из автоматически заполненного диапазона мы можем убедиться в том, что формула скопирована с учетом типа ссылок (в данном случае они являются относительными).
Другие виды автозаполнения
Возможности Эксель позволяют выполнить автозаполнение по порядку не только чисел, но и других подходящих для этого значений. При этом план действий остается тем же.
Даты
- Вводим дату в исходной ячейке. Затем тянем маркер заполнения в выбранном направлении (допустим, вправо).
- Получаем подряд идущие даты в выделенном диапазоне.
- Также вместо маркера можно воспользоваться функцией “Заполнить”, предварительно выделив диапазон элементов в нужном направлении и выбрав его же в доступных вариантах.
Примечание: формат ячеек при этом можно настроить на наше усмотрение.
Дни недели/месяцы
Аналогичным образом выполняется автоматическое заполнение ячеек по дням недели или названиям месяцев (на скриншоте).
Произвольные значения
Иногда в определенный диапазон ячеек требуется ввести однотипные данные с изменением содержащегося числового значения по возрастанию. Например, это может быть список адресов.
При протягивании значения из исходной ячейки на другие, мы видим, что меняется только номер дома: 2, 3, 4, 5 и т.д.
Создаем собственные списки
Если необходимого варианта автозаполнения в программе 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
Не забываем менять диапазоны на «свои». Списки создаем классическим способом. А всю остальную работу будут делать макросы.
Выпадающий список с поиском
Скачать пример выпадающего списка
При вводе первых букв с клавиатуры высвечиваются подходящие элементы. И это далеко не все приятные моменты данного инструмента. Здесь можно настраивать визуальное представление информации, указывать в качестве источника сразу два столбца.