Как найти источник “выпадающего списка” в файле? |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
Автор Владислав Каманин На чтение 1 мин
В Excel есть очень быстрый способ найти все выпадающие списки на листе.
Для этого:
1️⃣ Нажмите F5 или CTRL+G для вызова окна Переход и нажмите на кнопку Выделить.
Больше лайфхаков в нашем Telegram Подписаться
2️⃣ В окне Выделить группу ячеек выберите пункты Проверка данных и Всех, а затем щелкните ОК.
✅ Все ячейки с выпадающими списками на листе будут выделены.
Поделитесь, пожалуйста, в комментариях был ли полезен для вас этот совет? 👇
Почитайте еще
А вы знаете как добавить к формуле комментарий без
При сверке отчетов мне часто требуется сравнить данные
А вы знаете как создать автоматическую нумерацию строк
А вы умеете выравнивать текст на несколько ячеек без
На чтение 8 мин. Просмотров 4.2k.
Итог: Изучите быстрый и простой способ поиска любого списка проверки данных или раскрывающегося списка в ячейке с помощью бесплатного инструмента.
Уровень мастерства: Начинающий
Списки проверки данных являются отличным способом управления значениями, которые вводятся в ячейку. Эти выпадающие списки также позволяют нам выбирать параметры, которые могут управлять финансовыми моделями, отчетами или информационными панелями.
- Вы можете найти мой полный учебник по настройке списков проверки данных здесь.
- Тогда вы можете узнать, как сделать их динамичными здесь.
- И вы можете узнать, как сделать их зависимыми друг от друга здесь.
Тем не менее, нет встроенного способа поиска в списке
проверки в Excel. Пролистать эти списки может быть сложно, если в
раскрывающемся списке много элементов. Есть несколько действительно классных
решений на основе формул для этой проблемы, но они требуют большой работы по
настройке для каждого списка проверки в вашем файле.
Поэтому я разработал очень простую надстройку, которая
помогает решить эту проблему …
Нажмите на ссылки ниже, чтобы перейти к видео с обновлениями функции.
- Ноябрь 2016 Обновление
- Апрель 2017 Обновление
Содержание
- Поиск списков проверки с помощью поиска по списку
- Параметры и функции поиска в списке
- Работает со списками без проверки данных
- Ноябрь 2016 Обновление
- Апрель 2017 Обновление
- Загрузите надстройку поиска по списку (это бесплатно!)
- Как мои коллеги могут использовать поиск по списку?
- Как мы можем улучшить
поиск по списку?
Поиск списков проверки с помощью поиска по списку
Надстройка поиска по списку позволяет быстро и легко
выполнять поиск в любом списке проверки. Он также работает со списками данных,
которые не содержат ячейки проверки данных.
Форма поиска
по списку содержит раскрывающийся список, в который загружается список проверки
выбранной ячейки. Раскрывающийся список также функционирует как окно поиска. Вы
можете ввести поиск в поле, и результаты будут сужаться по мере ввода. Это
Google-подобный поиск, и в результаты будет входить любой элемент, содержащий
поисковый запрос. Элемент не должен начинаться с поискового запроса.
После
того, как вы выбрали нужный элемент, нажмите клавишу «Ввод» на клавиатуре или
нажмите кнопку «Ввод значения» в форме, чтобы ввести значение в выбранную
ячейку.
Поиск по списку работает в любой ячейке любой книги. Никаких специальных настроек не требуется. Просто выберите ячейку, нажмите кнопку поиска и начните поиск по списку.
Параметры и функции поиска в списке
Надстройка
поиска по списку содержит некоторые функции, которые позволяют очень быстро
вводить данные и работать со списками. Нажмите кнопку меню в окне поиска по
списку, чтобы просмотреть параметры.
- Select Next Cell— после нажатия клавиши «Ввод» или «Ввод значения» выбирается ячейка под активной ячейкой. Это поведение можно изменить в раскрывающемся меню направления.
- Down — выбирает ячейку под активной ячейкой.
- Right — выбор ячейки справа от активной ячейки.
- None — не меняет выбор.
- Close — закрывает окно поиска по списку.
- Paste — копирует входное значение в буфер обмена и вставляет его в активную ячейку с помощью метода VBA SendKeys. Окно поиска по списку закрывается. Это единственная опция, которая сохраняет историю отмен в Excel.
- Sort Order — выпадающий список можно отсортировать по возрастанию (A-Z), по убыванию (Z-A) или оригинальному порядку, нажимая кнопки переключения в меню параметров. Это только сортирует список в окне поиска списка. Он не сортирует список проверки данных в ячейке.
- List Info — кнопка Info отображает дополнительную информацию о раскрывающемся списке. В настоящее время отображается общее количество элементов в списке.
- Create List of Unique Values — добавлена новая кнопка, которая копирует содержимое раскрывающегося списка в буфер обмена. Затем вы можете вставить список в любой диапазон в рабочей книге. Это быстрый способ создания списка уникальных значений при использовании поиска по списку в ячейке, которая НЕ содержит проверки данных. Вы также можете отфильтровать список, введя поиск, а затем скопировать отфильтрованный список в буфер обмена.
ВАЖНО. Примечание.
При вводе значений в активную ячейку единственным способом сохранить историю отмен является использование параметра «Вставить» в раскрывающемся списке «Выбрать следующую ячейку». Поиск по списку использует макросы для ввода выбранного значения, и макросы обычно очищают историю отмен в Excel, когда они изменяют книгу.
Параметр Вставить — это обходной путь, который использует метод SendKeys для копирования и вставки выбранного значения. Это имитирует то, что пользователь будет делать для копирования / вставки, и НЕ очищает историю отмен в Excel.
Работает со списками без проверки данных
Поиск по
списку работает в ячейках, которые также не содержат проверки данных. Если вы
выберете ячейку, которая НЕ содержит проверку данных, и откроете Поиск по
списку, в раскрывающемся списке будет загружен список уникальных элементов из
столбца выбранной ячейки.
Это похоже на нажатие Alt + Стрелка вниз в ячейке, чтобы увидеть список значений в этом столбце. Тем не менее, список не должен быть непрерывным. Даже если столбец содержит пробелы, Поиск по списку все равно загрузит все уникальные значения в текущей области данных или списке.
Ноябрь 2016 Обновление
Я
опубликовал обновленную версию надстройки поиска по списку с несколькими новыми
функциями. Вот видео обзор новых функций.
Вот список возможностей:
- Добавлена опция «Вставить» в список
направлений. Это скопирует входное значение в буфер обмена и вставит его в
активную ячейку. Параметры Paste используют метод SendKeys в VBA для выполнения
вставки. Это означает, что история отмен не будет очищена при использовании
опции вставки. - Настройки для меню параметров и раскрывающегося
списка направления ввода теперь сохраняются в реестре. Ваши настройки будут
сохранены и загружены при следующем открытии Excel и надстройки. - Добавлены улучшения для таблиц Excel. Когда
активная ячейка находится в таблице, а ячейка не содержит проверки, будет
загружен уникальный список значений, исключая заголовки таблицы и итоговую
строку. - Добавлена функция копирования списка, которая
копирует содержимое выпадающего списка в буфер обмена. Эта функция используется
для создания списка уникальных значений из столбца / таблицы, когда активная
ячейка не содержит проверки. Это также работает, когда список фильтруется
поисковым запросом, чтобы копировать только отфильтрованные результаты.
Апрель 2017 Обновление
Исходя из
ваших потрясающих отзывов и запросов, я рад опубликовать еще одно обновление с
новыми функциями. Я делюсь новыми возможностями в следующем видео.
Вот список новых функций в обновлении апреля 2017 года:
- Он добавил функцию автоматического открытия,
чтобы автоматически открывать форму, когда выбрана ячейка, содержащая проверку
данных. Вы можете включить или отключить эту опцию с помощью
кнопки-переключателя в меню параметров. - Теперь надстройка работает с проверкой данных,
созданной с помощью формул (OFFSET
& INDEX) и
разделенных запятыми списков. Он должен работать со всеми типами списков
проверки данных. - Обновлено поведение клавиши Escape, чтобы закрыть окно поиска по
списку. Если в окне поиска есть текст, Escape очищает окно поиска. Если поле поиска пустое, Escape закрывает форму.
В видео я
также показал несколько ячеек с иконками раскрывающихся кнопок рядом с ними,
хотя эта ячейка не была выбрана. Посмотрите мою статью о том, как сделать так,
чтобы выпадающие кнопки списка проверки
всегда были видны, чтобы узнать больше об этой технике.
Загрузите надстройку поиска по списку (это бесплатно!)
Надстройка поиска списка бесплатна для загрузки и использования. Код VBA также имеет открытый исходный код, поэтому вы можете изменить его для своих нужд. Это также отличный способ узнать, как работают макросы и надстройки, если вы изучаете VBA.
Примечание. Вы
создадите бесплатную учетную запись на сайте участников Excel Campus для доступа к загрузке
и любым последующим обновлениям.
Сайт загрузки также содержит инструкции по установке и
видео.
Как мои коллеги могут использовать поиск по списку?
Надстройка поиска по списку установлена на вашем
компьютере, и только вы сможете увидеть вкладку XL Campus и использовать поиск
по списку. Если вы хотите, чтобы ваши коллеги могли использовать Поиск по
списку, есть два способа сделать это.
- Отправьте им ссылку на эту страницу, чтобы загрузить и установить Поиск по списку на своем компьютере. Они смогут использовать Поиск по списку в любом файле Excel, который они открыли на своем компьютере.
- Импортируйте пользовательскую форму поиска по списку в проект VB в файле Excel. Вы можете добавить форму поиска по списку в любую из ваших книг. Это должна быть книга с макросами. Вам также потребуется создать или импортировать модуль кода, который содержит макрос, чтобы открыть пользовательскую форму поиска по списку. Затем добавьте кнопку на лист или ленту, которая открывает форму.
Как мы можем улучшить
поиск по списку?
Надеюсь, надстройка поиска по списку сэкономит вам время на поиск в списках проверки данных. Конечная цель состоит в том, чтобы быстрее находить искомое значение в длинных списках данных.
Пожалуйста, оставьте комментарий ниже с любыми вопросами или предложениями. Спасибо!
Александр
Гуру
(2809),
на голосовании
9 лет назад
Имеется файл формата .xls (Microsoft Office Excel 97-2003). Открываю 2007-ым. В файле есть выпадающие списки с данными. Каким образом можно найти, где все эти данные записаны, чтобы скопировать все разом? На этом и других листах книги ячеек с этими данными не обнаружил.
Голосование за лучший ответ
Леонид Олейник
Гуру
(3063)
9 лет назад
Откройте Макросы – и там смотрите ( если они не под паролем ). Желательно знать объектную модель Excel ( Excel Object Model ) и такие объекты: ListObject Object,
ListRow Object, ListDataFormat Object, ListColumn Object Members
Алексей Матевосов (AlexM)
Просветленный
(27330)
9 лет назад
Надо встать на ячейку с выпадающим списком.
Данные – Проверка. Посмотреть Источник
В поле “Источник” будет указан диапазон, где находится список.
Либо список может быть непосредственно записан в поле “Источник”. Данные разделены точкой с запятой.
Еще может быть указано имя диапазона со списком.
В диспетчере имен по имени можно определить диапазон со списком.
Выпадающий список с быстрым поиском
Классический выпадающий список в ячейке листа Excel, сделанный через Данные – Проверка (Data – Validation) – простая и удобная штука, которую ежедневно применяют очень многие пользователи. Однако, у этого списка есть один весьма серьезный недостаток – в нём нет быстрого поиска по первым символам, т.е. фильтрации (отбора) только тех значений, куда введённый фрагмент входит как подстрока. Это серьезно ухудшает удобство пользования даже если в списке всего пара-тройка десятков позиций, а при нескольких сотнях убивает юзабилити напрочь.
Давайте рассмотрим как всё же реализовать подобный трюк. В качестве подопытного кролика возьмём список 250 лучших фильмов по версии IMDb:
Конечная цель – создать выпадающий список (ячейка G3), в котором можно будет быстро находить нужные фильмы, введя только жанр, год или фрагмент названия, например “гамп”.
Шаг 1. Определяем, кто нам нужен
Сначала нам нужно понять, какие из исходных ячеек нужно показывать в списке, т.е. определить содержится ли введённый в выпадающем списке текст (например, жанр “детектив”) в названии фильма. Для этого добавим слева от исходных данных еще один столбец с функцией ПОИСК (SEARCH), которая ищет заданную подстроку в тексте и выдает либо порядковый номер символа, где он был обнаружен, либо ошибку, если его там нет:
Теперь завернем нашу формулу в функцию проверки ЕЧИСЛО (ISNUMBER), которая превратит числа в логическую ИСТИНУ (TRUE), а ошибки – в ЛОЖЬ (FALSE):
Теперь сделаем так, чтобы ЛОЖЬ превратилась в 0, а вместо ИСТИНА в столбце появились последовательно возрастающие индексы-числа 1,2,3… и т.д. Это можно сделать с помощью добавления к нашей же формуле ещё парочки функций:
Здесь функция ЕСЛИ (IF) проверяет что мы имеем (ИСТИНУ или ЛОЖЬ), и
- если была ИСТИНА, то выводит максимальное значение из всех вышестоящих чисел + 1
- если была ЛОЖЬ, то выводит 0
Шаг 2. Отбираем в отдельный список
Дальше – проще. Теперь банальной функцией ВПР (VLOOKUP) просто выведём все найденные названия (я добавил столбец с порядковыми номерами для удобства):
После этого можно поиграться, вводя в жёлтую ячейку G2 разные слова и фразы и понаблюдать за тем, как наши формулы отбирают только подходящие фильмы:
Шаг 3. Создаем именованный диапазон
Теперь создадим именованный диапазон, который будет ссылаться на отобранные фильмы. Для этого выбрем на вкладке Формулы команды Диспетчер имен – Создать (Formulas – Name Manager – Create):
Имя диапазона может быть любым (например, Фильмы), а самое главное – это функция СМЕЩ (OFFSET), которая и делает всю работу. Напомню её синтаксис, если вы подзабыли:
=СМЕЩ(начальная_ячейка; сдвиг_вниз; сдвиг_вправо; высота; ширина)
У нас:
- В качестве начальной ячейки задаём первую ячейку списка отобранных элементов (E2).
- Сдвиги вниз и вправо у нас отсутствуют, т.е. равны нулю.
- Высота диапазона у нас соответствует максимальному значению индекса из столбца А.
- Ширина диапазона – 1 столбец.
Осталось сделать выпадающий список.
Шаг 4. Создаем выпадающий список
Выделим жёлтую ячейку (G2) и выберем на вкладке Данные команду Проверка данных (Data – Validation). В открывшемся окне выбрем Список (List) в поле Тип данных (Allow), а в качестве источника введем имя нашего созданного диапазона со знаком равно перед ним:
Чтобы Excel не ругался при вводе на неточное совпадение наших фраз с исходным списком, на вкладке Сообщение об ошибке (Error Alert) в этом окне нужно выключить флажок Выводить сообщение об ошибке (Show error alert):
Вот и всё. Можно жать на ОК и наслаждаться результатом:
Для пущего удобства при вводе с клавиатуры можно использовать Ctrl+Enter вместо Enter после ввода текста (так активная ячейка не уходит вниз) и сочетание клавиш Alt+стрелка вниз, чтобы развернуть выпадающий список без мыши.
P.S.
В принципе, можно было бы и не продолжать, но недавно Microsoft выкатила обновление вычислительного движка Excel, который теперь поддерживает динамические массивы и имеет специальные функции для работы с ними. Большинству пользователей они станут доступны в ближайшие месяцы, но даже если пока этих возможностей в вашем Excel нет – грех не показать как элементарно с их помощью решается наша задача.
Всё, что мы делали на Шагах 1-3 заменяется одной(!) формулой, где новая функция ФИЛЬТР (FILTER) отбирает из исходного диапазона A2:A251 только те фильмы, которые содержат заданную подстроку.
А дальше останется при создании выпадающего списка указать в качестве источника первую ячейку диапазона отобранных фильмов (C2) и добавить к ней знак #, чтобы получить ссылку на весь динамический массив:
И всё. Никаких именованных диапазонов и медленных СМЕЩ, никаких танцев с дополнительными столбцами и формулами. Песня!
Ссылки по теме
- Что такое динамические массивы в Excel
- Разбор трех основных функций динамических массивов: СОРТ, ФИЛЬТР и УНИК
- 4 способа создать выпадающий список на листе Excel