Excel выпадающий список без пустых значений

 

Добрый день.  
Такая проблема. В одном месте книги есть список договоров, однако из-за необходимости вводить дополнительные данные, договоры расположены не один за другим, а по крайней мере на расстоянии 2-3 ячейки друг от друга. Есть необходимость создать список из этих договоров, чтобы вставлять его на другой лист данной книги. Однако по умолчанию экзель в этот список запихивает все пустые ячейки между номерами договоров, и он получается очень некрасивым и громоздким, много «молока».  
Можно ли сделать так, чтобы экзель убирал нулевые значения из диапазона списка, и выводил в выпадающем списке только ячейки с данными?  
Как это выглядит примерно, набросал в аттаче.  
Спасибо!

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

С концовкой я ошибся — там есть пара примеров для вывода уникальных. Думаю, Вам это подойдёт.

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

В общем случае: цикл по столбцу: если ячейка не пустая — отбираем в массив, а потом этот массив в выпадающий.

 

{quote}{login=}{date=10.10.2011 02:50}{thema=}{post}В разделе «приемы» есть что-то похожее, почитайте, вдруг поможет:  

http://www.planetaexcel.ru/tip.php?aid=103

{/post}{/quote}  
Мозг видимо недостаточно гибкий у меня. :)  
Там написано, как удалять пустые ячейки. Но мне удалять их не надо, они мне нужны на том листе, где они находятся. Единственное, что придумал, это сделать дополнительное место со списком договоров, где уже удалять эти пустые ячейки, и делать список именно из этого места…

 

{quote}{login=Юрий М}{date=10.10.2011 02:54}{thema=}{post}В общем случае: цикл по столбцу: если ячейка не пустая — отбираем в массив, а потом этот массив в выпадающий.{/post}{/quote}  
Да, звучит неплохо. А как-то с формулой можно?

 

Похоже, с проблемой справился, хоть и не совсем так, как думал изначально.  
Сделал по третьему способу отсюда —

http://www.planetaexcel.ru/tip.php?aid=103  

Большое спасибо за подсказки! Пошёл решать следующие задачи.

 

Вы не только про первый способ прочитайте, там дальше еще интереснее. И формулами тоже.

 

Так что не существует формулы чтобы не входили в список эти пустые строки, может в диапазон списка чего ничуть условить? Помогите, пожалуйста у меня та же проблема, как сделать список без отображения пустых строк?

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

Споем. Только учтите, при таком способе длина строки валидации не должна превышать 256 символов.

Я сам — дурнее всякого примера! …

 

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

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

Так может лучше сформированный список куда-нибудь в сторонку на лист высыпать, а уже оттуда брать проверку? Тогда длина без разницы.

Я сам — дурнее всякого примера! …

 

KuklP

Пользователь

Сообщений: 14868
Регистрация: 21.12.2012

E-mail и реквизиты в профиле.

На всякий…  
-=20502=-

Я сам — дурнее всякого примера! …

 

davaispoem

Пользователь

Сообщений: 101
Регистрация: 01.01.1970

#15

17.01.2012 05:24:18

Можно конечно сделать и новый список, но у меня уже все увязки на него, а за ним и шифры и един изм и каждый показатель этого списка имеет еще свой список, с увязкой на СМЕЩ, поэтому так и получается не красиво…    
Не срабатывает у меня такой вариант со списком только выбранных ячеек, список не выпадает, при проверке пишет: при вычислении «Источник» возникает ошибка.  
А так бы было очень хорошо, просто самый наилучший и легкий вариант…  
Спасибо.

Ирина

Уважаемые форумчане, доброго всем вам дня!
Увидел в одной из тем замечательное решение от модератора форума _Boroda_, позволяющее не показывать пустые значения в выпадающем списке (ссылку, к сожалению, не могу привести). Все сделал, все работает замечательно, но обнаружил, как мне кажется, системную ошибку работы Excel 2013 (в Excel 2007 вроде работает нормально, в других версиях не проверял).
Проблема в том, что после каждого открытия файла, в выпадающем списке показывается только первое значение из диапазона возможных значений, но стоит мне перейти в раздел «Данные-Проверка Данных» и там просто кликнуть по кнопке ОК, как все начинает нормально работать…
Пример с подробным описанием проблемы в файле.

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

Спасибо!

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

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


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

Например, у вас есть данные ниже в диапазоне B2: B13, чтобы создать раскрывающийся список без пустых ячеек, сначала вы можете скопировать и вставить данные в новый столбец без пробелов. Затем создайте раскрывающийся список на основе этого нового списка значений.

1. Примените следующую формулу, чтобы скопировать и вставить только непустые значения ячеек, введите эту формулу: =LOOKUP(«zzzzz»,CHOOSE({1,2},»»,INDEX(B:B,SMALL(IF($B$1:$B$13<>»»,ROW($B$1:$B$13)),ROWS($D$1:D1))))) в пустую ячейку D1, например, а затем нажмите Ctrl + Shift + Enter вместе, чтобы получить следующий результат:

Внимание: В приведенной выше формуле B1: B13 — это список данных, который вы хотите использовать. Вы можете изменить ссылку на ячейку по своему усмотрению.

2. Затем выберите ячейку D1 и перетащите маркер заполнения вниз в диапазон, который вы хотите содержать эту формулу, и все непустые значения ячеек будут извлечены. Смотрите скриншот:

3. Теперь создайте выпадающий список проверки данных с этим новым списком данных. Выберите ячейки, в раскрывающемся списке которых вы хотите разместить, затем нажмите Данные > проверка достоверности данных.

4. в Данные В диалоговом окне проверки вам необходимо:

1). Перейдите на вкладку Настройки и выберите Список в Разрешить раскрывающийся список;

2). Выберите диапазон ячеек со значениями, которые вы извлекли выше в Источник коробка;

3). Щелкните значок OK кнопка. Смотрите скриншот:

5. Затем сразу же создаются выпадающие списки без пробелов.


Статьи по теме:

  • Как автоматически заполнять другие ячейки при выборе значений в раскрывающемся списке Excel?
  • Как выполнить автозаполнение при вводе в раскрывающемся списке Excel?
  • Как создать выпадающий список с возможностью поиска в Excel?
  • Как создать календарь с выпадающим списком в Excel?
  • Как создать раскрывающийся список с множественным выбором или значениями в Excel?

Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Комментарии (7)


Номинальный 1 из 5


·


рейтинги 1

Skip to content

5 способов создать выпадающий список в ячейке Excel

Одной из наиболее полезных функций при вводе данных является возможность использовать выпадающий список в 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 можно использовать также и именованный диапазон.

создаем из именованного диапазона списки в excel

К примеру, диапазону I2:I13, содержащему названия месяцев, можно присвоить наименование «месяцы». Затем имя можно ввести в поле «Источник».

использование именованного диапазона в выпадающем списке

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

Но вы можете и не использовать диапазоны или ссылки, а просто определить возможные варианты прямо в поле «Источник». К примеру, чтобы реализовать в таблице Excel простейший выбор «да – нет», вы можете вписать туда –

Да;Нет

Используйте для разделения значений точку с запятой, запятую, либо другой символ, установленный у вас в качестве разделителя элементов. (Смотрите Панель управления — Часы и регион — Форматы — Дополнительно — Числа.)

3 — Создаем элемент управления.

Вставим на лист новый объект – элемент управления «Поле со списком» с последующей привязкой его к данным на листе Excel. Делаем:

  1. Откройте вкладку Разработчик (Developer). Если её не видно, то в Excel 2007 нужно нажать кнопку Офис – Параметры – флажок Отображать вкладку Разработчик на ленте (Office Button – Options – Show Developer Tab in the Ribbon) или в версии 2010–2013 и выше щелкните правой кнопкой мыши по ленте, выберите команду Настройка ленты (Customize Ribbon) и включите отображение вкладки Разработчик (Developer) с помощью флажка.
  2. Найдите нужный значок среди элементов управления (см.рисунок ниже).

используем элемент управления

Вставив элемент управления на рабочий лист, щелкните по нему правой кнопкой мышки и выберите в появившемся меню пункт «Формат объекта». Далее указываем диапазон ячеек, в котором записаны допустимые значения для ввода. В поле «Связь с ячейкой» укажем, куда именно поместить результат. Важно учитывать, что этим результатом будет не само значение из указанного нами диапазона, а только его порядковый номер.

получаем в ячейку номер позиции в списке

Но нам ведь нужен не этот номер, а соответствующее ему слово. Используем функцию ИНДЕКС (INDEX в английском варианте). Она позволяет найти в списке значений одно из них соответственно его порядковому номеру. В качестве аргументов ИНДЕКС укажите диапазон ячеек (F5:F11) и адрес с полученным порядковым номером (F2).

Формулу в F3 запишем, как показано на рисунке:

=ИНДЕКС(F5:F11;F2)

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

Обратите также внимание, что здесь мы не привязаны ни к какой конкретному месту таблицы. Таким списком Excel удобно пользоваться, поскольку его можно свободно «перетаскивать» мышкой в любое удобное место. Для этого на вкладке «Разработчик» нужно активизировать режим конструктора.

4 — Элемент ActiveX

Действуем аналогично предыдущему способу, но выбираем иконку чуть ниже — из раздела «Элементы 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? Одной из наиболее полезных функций проверки данных является возможность создания выпадающего списка, который позволяет выбирать значение из предварительно определенного перечня. Но как только вы начнете применять это в своих таблицах,…

Понравилась статья? Поделить с друзьями:
  • Excel выпадающий список автозаполнение ячеек
  • Excel выпадающий список activex
  • Excel выпадающие списки уже выбранные значения
  • Excel выпадающие списки с зависимыми данными
  • Excel выпадающие списки в диаграммах