Как в Excel искать несколько значений: от простых способов до продвинутых техник

Работа с большими массивами данных в Microsoft Excel часто требует поиска не одного, а сразу нескольких значений. Например, когда нужно найти все строки с определенными кодами товаров, фамилиями клиентов или датами. Стандартный поиск по Ctrl+F здесь бесполезен — он ищет только одно значение за раз. К счастью, в Excel есть как минимум 7 способов решить эту задачу, и мы разберем каждый из них с практическими примерами.

В этой статье вы узнаете, как:

  • 🔍 Использовать условное форматирование для визуальной пометки ячеек с несколькими значениями
  • 📊 Применять расширенный фильтр для извлечения данных по списку критериев
  • 🤖 Автоматизировать поиск с помощью Power Query и формул массива
  • 📈 Сравнивать эффективность методов в зависимости от объема данных

Все методы протестированы в Excel 2019-2023 и Microsoft 365, но большинство из них работает и в более ранних версиях (начиная с Excel 2010). Для некоторых способов потребуется включить надстройку Power QueryExcel 2016 и старше она встроена по умолчанию).

1. Условное форматирование: визуальная пометка ячеек

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

Допустим, у вас есть список товаров в столбце A, и вы хотите выделить все ячейки, содержащие значения "Яблоко", "Банан" или "Апельсин". Вот как это сделать:

  1. Выделите диапазон данных (например, A2:A100)
  2. Перейдите на вкладку Главная → Условное форматирование → Создать правило
  3. Выберите тип правила: Использовать формулу для определения форматируемых ячеек
  4. Введите формулу:
    =ИЛИ(A2="Яблоко"; A2="Банан"; A2="Апельсин")
  5. Задайте формат выделения (например, желтый фон) и нажмите ОК

Для большего количества значений удобнее хранить их в отдельном списке (например, в столбце D) и использовать формулу с ПОИСКПОЗ:

=НЕ(ЕОШИБКА(ПОИСКПОЗ(A2; $D$2:$D$4; 0)))
⚠️ Внимание: Условное форматирование не изменяет сами данные — оно только визуально выделяет ячейки. Если вам нужно отфильтровать или извлечь найденные значения, используйте методы из следующих разделов.

2. Расширенный фильтр: извлечение данных по списку

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

Предположим, у вас есть таблица с данными о продажах (столбцы: Товар, Дата, Сумма), и вы хотите отфильтровать строки только для товаров "Ноутбук", "Монитор" и "Клавиатура". Вот пошаговая инструкция:

Создайте список критериев в отдельном диапазоне (например, F1:F4)

В ячейку F1 введите заголовок столбца, по которому фильтруете (например, "Товар")

В ячейки F2:F4 введите искомые значения ("Ноутбук", "Монитор", "Клавиатура")

Выделите исходную таблицу с данными (включая заголовки)

Перейдите на вкладку Данные → Сортировка и фильтр → Дополнительно

-->

Исходные данныеКритерий фильтраРезультат
Столбец с заголовком "Товар"Ячейка F1: "Товар"
F2: "Ноутбук"
F3: "Монитор"
Все строки, где в столбце "Товар" есть эти значения
10 000+ строкДо 100 критериевФильтрация за 1-2 секунды
Текстовые и числовые данныеТочное совпадениеКопирует форматирование исходных данных

В окне расширенного фильтра:

  • 📋 Укажите Исходный диапазон (ваша таблица с данными)
  • 🎯 Укажите Диапазон условий (ячейки F1:F4 с критериями)
  • 📤 Выберите скопировать результат в другое место и укажите верхнюю левую ячейку для вывода
  • 🔄 Нажмите ОК — Excel скопирует отфильтрованные данные в указанное место

Условное форматирование

Расширенный фильтр

Формулы (ИНДЕКС/ПОИСКПОЗ)

Power Query

Другой метод-->

⚠️ Внимание: Расширенный фильтр чувствителен к регистру. Если в ваших данных есть расхождения в регистре ("ноутбук" vs "Ноутбук"), используйте формулы для предварительной нормализации данных или добавьте все варианты в критерии.

3. Формулы массива: динамический поиск без фильтрации

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

Рассмотрим задачу: в таблице с продажами (столбцы: Менеджер, Товар, Сумма) нужно найти общую выручку по товарам "Телефон" и "Планшет" для менеджеров "Иванов" и "Петров". Решение с формулой массива:

=СУММ(

(A2:A100={"Иванов";"Петров"}) *

(B2:B100={"Телефон";"Планшет"}) *

(C2:C100)

)

Как это работает:

  • 🔢 (A2:A100={"Иванов";"Петров"}) — создает массив ИСТИНА/ЛОЖЬ для каждого менеджера
  • 📱 (B2:B100={"Телефон";"Планшет"}) — аналогично для товаров
  • 💰 (C2:C100) — массив с суммами продаж
  • 🔄 Умножение массивов дает только те суммы, где оба условия совпадают

В современных версиях Excel (2019+) формулы массива не требуют нажатия Ctrl+Shift+Enter — они работают как обычные формулы. В Excel 2016 и старше для ввода формулы массива нужно нажать Ctrl+Shift+Enter.

Как адаптировать формулу для неточного поиска?

Если нужно найти значения по частичному совпадению (например, все товары с словом "apple"), используйте:

=СУММ(

--(НЕ(ЕОШИБКА(ПОИСК("apple"; B2:B100)))) *

(C2:C100)

)

Функция ПОИСК ищет подстроку в тексте, а двойное отрицание -- преобразует ИСТИНА/ЛОЖЬ в 1/0 для умножения.

4. Функции ИНДЕКС+ПОИСКПОЗ: поиск с возвратом связанных данных

Когда нужно не просто найти строки с несколькими значениями, а извлечь связанные данные (например, найти цены для списка артикулов), комбинация ИНДЕКС + ПОИСКПОЗ становится незаменимой. Этот метод особенно полезен для создания динамических отчетов.

Допустим, у вас есть справочник товаров (столбцы: Артикул, Название, Цена), и вам нужно найти цены для списка артикулов из другого диапазона. Решение:

  1. Создайте список искомых артикулов в столбце E (начиная с E2)
  2. Рядом в ячейке F2 введите формулу:
    =ЕСЛИОШИБКА(
    

    ИНДЕКС($C$2:$C$100;

    ПОИСКПОЗ(E2; $A$2:$A$100; 0));

    "Не найдено"

    )

  3. Растяните формулу вниз на нужное количество строк

Критичный нюанс: диапазоны в формуле должны быть абсолютными ссылками (со знаком $), иначе при копировании формулы они сдвинутся.

ПреимуществаОграничения
Работает в любых версиях ExcelТребует точного совпадения
Мгновенный пересчет при изменении данныхНе подходит для поиска по частичному совпадению
Можно извлекать данные из нескольких столбцовНужно дублировать формулу для каждого столбца

5. Power Query: продвинутый поиск и трансформация данных

Для работы с очень большими наборами данных (сотни тысяч строк) или когда нужно не просто найти, а трансформировать данные (объединить таблицы, очистить данные, создать сводные отчеты), Power Query становится лучшим выбором. Этот инструмент встроен в Excel 2016+ и позволяет автоматизировать сложные операции без формул.

Разберем задачу: у вас есть две таблицы — основная с заказами и справочник товаров. Нужно найти все заказы для определенного списка товаров и добавить к ним данные из справочника. Пошаговая инструкция:

  1. Перейдите на вкладку Данные → Получить данные → Из таблицы/диапазона
  2. Загрузите основную таблицу в Power Query
  3. В редакторе запросов выберите столбец с товарами и нажмите Главная → Фильтр → Текстовые фильтры → Равно...
  4. В окне фильтра выберите Пользовательский фильтр и введите первое значение (например, "Ноутбук")
  5. Нажмите Или и добавьте остальные значения
  6. Для объединения с справочником нажмите Главная → Объединить запросы и выберите соответствующие столбцы
  7. Нажмите Закрыть и загрузить — результат появится на новом листе

Главные преимущества Power Query:

  • 🚀 Обрабатывает миллионы строк без замедления
  • 🔄 Автоматически обновляет данные при изменении источника
  • 🔗 Может объединять данные из нескольких источников (Excel, CSV, базы данных)
  • 📊 Позволяет создавать сложные трансформации без формул

6. Функция ФИЛЬТР (Excel 365 и 2021): современный подход

В последних версиях Microsoft 365 и Excel 2021 появилась революционная функция ФИЛЬТР, которая радикально упрощает поиск по нескольким критериям. Она возвращает динамический массив отфильтрованных данных, который автоматически обновляется при изменении исходных данных или критериев.

Синтаксис функции:

=ФИЛЬТР(

массив; // Диапазон с исходными данными

(условие1) * (условие2); // Логические выражения

[если_пусто] // Значение, если ничего не найдено

)

Пример: отфильтруем таблицу продаж (диапазон A1:C100) по товарам "Чай" или "Кофе" и сумме продаж > 1000:

=ФИЛЬТР(

A2:C100;

((B2:B100="Чай") + (B2:B100="Кофе")) * (C2:C100>1000);

"Нет данных"

)

Особенности функции ФИЛЬТР:

  • 🆕 Работает только в Excel 365 и Excel 2021
  • 🔄 Возвращает динамический массив, который "проливается" на соседние ячейки
  • 📈 Можно комбинировать с другими функциями массива (СОРТ, УНИК)
  • ⚡ В 10-100 раз быстрее, чем формулы массива старого образца
⚠️ Внимание: Функция ФИЛЬТР чувствительна к регистру. Для регистронезависимого поиска используйте комбинацию с НАЙТИ или ПОИСК:
=ФИЛЬТР(

A2:C100;

(НЕ(ЕОШИБКА(ПОИСК("чай"; B2:B100)))) * (C2:C100>1000);

"Нет данных"

)

7. Сводные таблицы: анализ данных с несколькими фильтрами

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

Как создать сводную таблицу для анализа продаж по нескольким товарам:

  1. Выделите исходную таблицу с данными (включая заголовки)
  2. Перейдите на вкладку Вставка → Сводная таблица
  3. В окне создания сводной таблицы выберите Новый лист и нажмите ОК
  4. В области Названия строк перетащите поле "Товар"
  5. В область Значения перетащите поле "Сумма"
  6. Нажмите на стрелку фильтра рядом с "Товар" и выберите нужные значения
  7. Для дополнительной фильтрации (например, по региону) перетащите поле "Регион" в область Фильтры

Преимущества сводных таблиц для поиска нескольких значений:

  • 📊 Визуальный интерфейс — не нужно запоминать формулы
  • 🔍 Можно фильтровать по нескольким критериям одновременно
  • 📈 Автоматическое агрегирование данных (сумма, среднее, количество)
  • 🔄 Легко обновлять при изменении исходных данных

Для сложных критериев (например, "товары X и Y в регионах A или B") используйте фильтр по меткам:

  1. Нажмите на стрелку фильтра рядом с полем
  2. Выберите Фильтр по меткам
  3. В ручном режиме отметьте нужные значения
  4. Для логического "ИЛИ" используйте закладку Или

Сравнение методов: какой выбрать?

Выбор метода поиска нескольких значений зависит от задачи, объема данных и версии Excel. В таблице ниже сравнены все рассмотренные способы:

Метод Сложность Макс. объем данных Динамическое обновление Версии Excel Лучше всего для
Условное форматирование 100 000 строк Да 2010+ Визуальная пометка ячеек
Расширенный фильтр ⭐⭐ 1 000 000 строк Нет (нужно запускать вручную) 2007+ Одноразовое извлечение данных
Формулы массива ⭐⭐⭐ 10 000 строк Да 2010+ Сложные расчеты по критериям
ИНДЕКС+ПОИСКПОЗ ⭐⭐ 100 000 строк Да 2007+ Поиск связанных данных
Power Query ⭐⭐⭐ Неограниченно Да (при обновлении) 2016+ Обработка больших объемов данных
Функция ФИЛЬТР ⭐⭐ 1 000 000 строк Да 365/2021 Динамическая фильтрация
Сводные таблицы ⭐⭐ 1 000 000 строк Да (при обновлении) 2010+ Анализ данных по нескольким критериям

Для большинства задач оптимальным выбором будет:

  • 🔹 Условное форматирование — если нужно просто выделить ячейки
  • 🔹 Расширенный фильтр — для одноразового извлечения данных
  • 🔹 Функция ФИЛЬТР — в Excel 365/2021 для динамических отчетов
  • 🔹 Power Query — для обработки больших объемов данных или сложных трансформаций

Частые ошибки и как их избежать

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

1. Ошибка #Н/Д в формулах ИНДЕКС+ПОИСКПОЗ

Причина: Искомое значение отсутствует в диапазоне поиска. Решение — оберните формулу в ЕСЛИОШИБКА:

=ЕСЛИОШИБКА(ИНДЕКС(...); "Не найдено")

2. Расширенный фильтр не находит значения

Причины и решения:

  • 🔠 Разный регистр: Используйте столбец с приведенными к нижнему регистру значениями или добавьте все варианты в критерии
  • 📝 Лишние пробелы: Примените СЖПРОБЕЛЫ к исходным данным и критериям
  • 📏 Несовпадение форматов: Убедитесь, что и в данных, и в критериях используются одинаковые форматы (текст/число/дата)

3. Формулы массива возвращают #ЗНАЧ!

Причина: Размер возвращаемого массива не совпадает с диапазоном вывода. Решение — убедитесь, что:

  • Для функции ФИЛЬТР достаточно места справа и снизу от ячейки с формулой
  • В старых версиях Excel формула массива введена с Ctrl+Shift+Enter

4. Power Query не находит значения

Причины и решения:

  • 📊 Неверный тип данных: Преобразуйте столбцы к правильному типу (текст/число/дата) в редакторе Power Query
  • 🔍 Скрытые символы: Используйте Заменить значения для очистки данных от непечатаемых символов
  • 🔄 Не обновлены данные: Нажмите Обновить на вкладке Данные после изменения источника

5. Сводная таблица не обновляется

Решения:

  • 🔄 Нажмите правой кнопкой на сводную таблицу и выберите Обновить
  • 📋 Проверьте, что источник данных не изменил своего диапазона
  • 🔗 Если данные подтягиваются из внешнего источника, обновите соединение

Помните: 90% ошибок при поиске нескольких значений связаны с несовпадением форматов данных или наличием скрытых символов. Всегда проверяйте исходные данные на наличие лишних пробелов, непечатаемых символов и единообразие форматов.

FAQ: Ответы на частые вопросы

Можно ли искать несколько значений в Excel Online?

Да, но с ограничениями. В Excel Online доступны:

  • 🔍 Условное форматирование (полностью)
  • 📊 Расширенный фильтр (только базовая функциональность)
  • 📈 Сводные таблицы (без некоторых продвинутых функций)

Недоступны: Power Query, функция ФИЛЬТР (только в настольной версии Excel 365). Для формул массива требуется ручной ввод с Ctrl+Shift+Enter.

Как искать несколько значений в Google Таблицах?

В Google Sheets доступны аналогичные методы:

  • 🔍 Условное форматирование — работает как в Excel
  • 📊 ФИЛЬТР — аналогичная функция, но с немного другим синтаксисом:
    =FILTER(A2:C100; REGEXMATCH(B2:B100; "Чай|Кофе"))
  • 📈 QUERY — уникальная функция для сложных запросов:
    =QUERY(
    

    A2:C100;

    "SELECT A, C WHERE B = 'Чай' OR B = 'Кофе'";

    1

    )

В Google Sheets нет расширенного фильтра в привычном виде, но его заменяет функция FILTER или QUERY.

Почему формула ищет только первое значение из списка?

Это типичная ошибка при использовании функции ПОИСКПОЗ или ВПР для поиска нескольких значений. Эти функции возвращают только первое найденное совпадение. Решения:

  • 🔍 Используйте ФИЛЬТР (Excel 365) для возврата всех совпадений
  • 📋 Примените ИНДЕКС+ПОИСКПОЗ в комбинации с ПОВТОР для поиска всех вхождений
  • 📊 Используйте Power Query для извлечения всех строк с нужными значениями

Пример формулы для поиска всех вхождений (возвращает массив позиций):

=ПОИСКПОЗ(искомое_значение; диапазон; 0) + СТРОКА(диапазон) - МИН(СТРОКА(диапазон))
Как искать значения с учетом регистра?

По умолчанию большинство функций Excel регистронезависимые. Для чувствительного к регистру поиска:

  • 🔍 Используйте НАЙТИ вместо ПОИСК:
    =ЕСЛИ(НЕ(ЕОШИБКА(НАЙТИ("Текст"; A2))); "Нашено"; "Нет")
  • 📊 В ФИЛЬТР комбинируйте с ТОЧНОЕ:
    =ФИЛЬТР(
    

    A2:B100;

    ТОЧНОЕ(B2:B100; {"Текст1"; "Текст2"});

    "Нет данных"

    )

  • 📋 В Power Query