ФИЛЬТР по двум условиям одновременно
Практический разбор: создать динамическую выборку по региону и статусу. Таблица под задачу, контрольный результат, ошибки конкретной формулы, самопроверка и самостоятельное задание.
=ФИЛЬТР(A2:D100;(B2:B100=H2)*(C2:C100=I2);"Нет данных")=FILTER(A2:D100,(B2:B100=H2)*(C2:C100=I2),"No data")В русской локализации Excel аргументы чаще разделяются точкой с запятой, а в английской — запятой. При копировании формул учитывайте региональные настройки.
Короткий ответ
В этой статье разберем, как в Excel создать динамическую выборку по региону и статусу. Сначала — готовая формула, затем подробная логика, рабочий пример, проверка результата, типовые ошибки и варианты применения в реальной таблице.
Зачем использовать этот прием
Практическая задача этой статьи — создать динамическую выборку по региону и статусу. Именно поэтому пример ниже использует поля «Заказ» и «Регион», а не универсальную таблицу с абстрактными «Значение 1 / Значение 2».
Контрольный результат для примера: При выборе «Москва» + «Оплачен» результат содержит Z-101 и Z-104. Сначала получите его вручную по данным таблицы, затем используйте формулу. Так вы проверяете не только синтаксис Excel, но и саму бизнес-логику расчёта.
Пример исходных данных
| Заказ | Регион | Статус | Сумма, ₽ |
|---|---|---|---|
| Z-101 | Москва | Оплачен | 120000 |
| Z-102 | Москва | В работе | 90000 |
| Z-103 | Казань | Оплачен | 80000 |
| Z-104 | Москва | Оплачен | 150000 |
| Z-105 | Казань | В работе | 73000 |
Контроль: При выборе «Москва» + «Оплачен» результат содержит Z-101 и Z-104.
Таблица для «ФИЛЬТР по двум условиям одновременно» подобрана так, чтобы результат можно было проверить вручную. При переносе в свой файл сохраняйте смысл ключевых полей, даже если рабочие названия столбцов отличаются.
Подготовка данных
- Свободную зону разлива.
- Одинаковые размеры массивов условий.
- Ожидаемое поведение при пустом результате.
- Отдельно проверьте контрольную строку: При выборе «Москва» + «Оплачен» результат содержит Z-101 и Z-104.
- Оставляйте свободную зону разлива и проверяйте размер каждого логического массива.
Разбираем формулу пошагово
1. Сформулируйте задачу словами
Запишите правило без Excel:
> «Для каждой строки нужно создать динамическую выборку по региону и статусу.»
Для «ФИЛЬТР по двум условиям одновременно» сначала сформулируйте правило однозначно и получите ожидаемый ответ словами. Формулу стоит вводить только после того, как бизнес-логика не допускает двух разных трактовок.
2. Определите входные данные
Отметьте:
- откуда берется исходное значение;
- какой диапазон участвует;
- какие критерии обязательны;
- какой результат ожидается;
- что делать при пустых данных;
- что делать при ошибке.
3. Введите формулу
Русская версия:
=ФИЛЬТР(A2:D100;(B2:B100=H2)*(C2:C100=I2);"Нет данных")
Английская версия:
=FILTER(A2:D100,(B2:B100=H2)*(C2:C100=I2),"No data")
Формулу для «ФИЛЬТР по двум условиям одновременно» сначала проверьте на одной понятной строке; только после совпадения с ручным ответом переносите её на весь диапазон.
4. Проверьте вручную
Для контрольной строки «ФИЛЬТР по двум условиям одновременно» получите ожидаемый результат без Excel: поисковый ответ найдите в таблице глазами, а расчётный пересчитайте отдельно. Затем сравните ручной ответ с формулой.
5. Проверьте ссылки
В Excel:
A2— относительная ссылка;$A$2— полностью абсолютная;$A2— фиксирован столбец;A$2— фиксирована строка.
В «ФИЛЬТР по двум условиям одновременно» неверно закреплённая ссылка может не дать ошибки Excel, но сместить диапазон после копирования. Поэтому сравните адреса ссылок в первой и последней формуле.
---
Ключевой нюанс именно этой задачи
Умножение массивов реализует И. Для ИЛИ обычно используют сложение логических условий.
Результату нужно свободное пространство для разлива. Любая занятая ячейка внутри будущего массива может вызвать #РАЗЛИВ! / #SPILL!.
---
Как читать формулу, а не заучивать ее
Для «ФИЛЬТР по двум условиям одновременно» читайте формулу через задачу создать динамическую выборку по региону и статусу, а не по названиям функций. Сначала найдите в выражении входное значение или ключ, затем диапазон/порог, после этого — возвращаемый или вычисляемый результат. Контрольная точка для текущего примера: При выборе «Москва» + «Оплачен» результат содержит Z-101 и Z-104.
Оставляйте свободную зону разлива и проверяйте размер каждого логического массива. Ключевой смысл из исходного материала: Умножение массивов реализует И.
Рабочий сценарий №1: ежедневная выгрузка
Используйте приём в процессе, где действительно нужно создать динамическую выборку по региону и статусу. Не начинайте с массового копирования формулы: возьмите одну понятную строку из примера и подтвердите результат: При выборе «Москва» + «Оплачен» результат содержит Z-101 и Z-104. После этого перенесите логику на 5–10 реальных строк с разными исходными значениями.
Особенность именно этой темы: Умножение массивов реализует И.
Рабочий сценарий №2: контроль качества
Сделайте рядом с основным результатом контроль качества. Для статьи «ФИЛЬТР по двум условиям одновременно» минимум один контроль должен проверять следующую вещь: #РАЗЛИВ! из-за занятой ячейки. Второй контроль должен показывать строки, где исходные данные не позволяют уверенно применить правило.
Проверочный сценарий: Займите одну ячейку в зоне разлива, затем очистите её и сравните поведение.
Рабочий сценарий №3: подготовка к сводной таблице
После расчёта не прячьте результат внутри исходного листа. Выведите его в отчёт в том разрезе, в котором принимается решение. Для задачи «создать динамическую выборку по региону и статусу» рядом полезно показывать исходные значения, из которых получился результат, а также число строк/объектов в базе расчёта.
Сводная лучше для агрегатов и срезов, ФИЛЬТР/УНИК/СОРТ — когда нужен сам динамический список строк или справочник.
Частые ошибки
Ошибка 1. #разлив! из-за занятой ячейки
В этой теме это особенно опасно, потому что результат может выглядеть правдоподобно. Займите одну ячейку в зоне разлива, затем очистите её и сравните поведение.
Ошибка 2. Массив условий другой длины
Сверьте результат с контрольной точкой: При выборе «Москва» + «Оплачен» результат содержит Z-101 и Z-104.
Ошибка 3. Пустой критерий неожиданно возвращает весь набор
Если структура данных изменилась, заново сопоставьте аргументы формулы со столбцами, а не просто протягивайте старое выражение.
Ошибка 4. Игнорируется нюанс конкретной функции
Умножение массивов реализует И.
Профессиональная проверка формулы
Для «ФИЛЬТР по двум условиям одновременно» одной обычной строки недостаточно. Прогоните отдельные тесты на корректный пример, изменение входа, качество данных и пограничное значение:
- Контрольный пример: При выборе «Москва» + «Оплачен» результат содержит Z-101 и Z-104.
- Изменение входа: Займите одну ячейку в зоне разлива, затем очистите её и сравните поведение.
- Качество данных: специально создайте проблему «#РАЗЛИВ! из-за занятой ячейки» и убедитесь, что вы её замечаете.
- Граница правила: проверьте значение непосредственно на пороге/границе, если она есть в формуле.
- Массовое копирование: сравните первую, вторую и последнюю формулу после протягивания.
- Независимый итог: пересчитайте хотя бы одну строку вручную или альтернативным способом.
Чек-лист аудита
Советы для больших таблиц
Для статьи «ФИЛЬТР по двум условиям одновременно» при росте файла особенно важно сохранить проверяемость задачи «создать динамическую выборку по региону и статусу». Динамические массивы удобны для интерактивной выдачи, но не размещайте рядом ручные данные в зоне возможного разлива. На очень больших источниках контролируйте объём возвращаемых строк. Оставляйте свободную зону разлива и проверяйте размер каждого логического массива. Контроль качества не должен исчезать после оптимизации: оставьте хотя бы одну независимую строку, где ожидается результат «При выборе «Москва» + «Оплачен» результат содержит Z-101 и Z-104.».
Когда лучше использовать Power Query
Для задачи «создать динамическую выборку по региону и статусу» Power Query становится предпочтительнее, когда обработка повторяется с каждой новой выгрузкой. Power Query лучше, если выборку нужно материализовать как отдельную таблицу при обновлении, а не пересчитывать интерактивно по пользовательскому критерию. В случае «ФИЛЬТР по двум условиям одновременно» формулу имеет смысл оставить на листе, если пользователь должен менять параметры и сразу видеть пересчёт.
Когда лучше сводная таблица
В контексте «ФИЛЬТР по двум условиям одновременно» сводная нужна не вместо формулы, а после подготовки корректного поля/показателя. Сводная лучше для агрегатов и срезов, ФИЛЬТР/УНИК/СОРТ — когда нужен сам динамический список строк или справочник. Для проверки всегда возвращайтесь к исходным строкам, на которых подтверждается: При выборе «Москва» + «Оплачен» результат содержит Z-101 и Z-104.
Практическое задание
Создайте таблицу минимум из 20 строк и примените:
=ФИЛЬТР(A2:D100;(B2:B100=H2)*(C2:C100=I2);"Нет данных")
После этого специально добавьте:
- пустое значение в тесте «ФИЛЬТР по двум условиям одновременно»;
- дубликат ключа или строки;
- нулевое значение там, где оно допустимо;
- граничный сценарий правила;
- строку с неправильным типом данных.
Запишите, как меняется результат и почему.
---
Задание повышенной сложности
Возьмите практическое задание именно по теме «ФИЛЬТР по двум условиям одновременно» и добавьте исключение «#РАЗЛИВ! из-за занятой ячейки». Сделайте так, чтобы пользователь либо получил корректный результат, либо увидел понятный контроль качества, а не правдоподобное неверное число.
Затем выполните тест: Займите одну ячейку в зоне разлива, затем очистите её и сравните поведение. Финальная проверка должна по-прежнему объяснять контрольный результат: При выборе «Москва» + «Оплачен» результат содержит Z-101 и Z-104.
Что запомнить
- Что решаем: создать динамическую выборку по региону и статусу.
- Контрольный результат: При выборе «Москва» + «Оплачен» результат содержит Z-101 и Z-104.
- Ключевой нюанс: Умножение массивов реализует И.
- Главный риск: #РАЗЛИВ! из-за занятой ячейки.
- Практический принцип: Оставляйте свободную зону разлива и проверяйте размер каждого логического массива.
- Следующий шаг: примените формулу на собственных данных и сохраните независимую контрольную строку.
Что изучить дальше
После темы «ФИЛЬТР по двум условиям одновременно» сравните два способа решить близкую задачу: формулой на листе и преобразованием данных. Для сценария «создать динамическую выборку по региону и статусу» ориентир по Power Query такой: Power Query лучше, если выборку нужно материализовать как отдельную таблицу при обновлении, а не пересчитывать интерактивно по пользовательскому критерию. Если же нужен групповой отчёт по периодам/сегментам, используйте следующий ориентир: Сводная лучше для агрегатов и срезов, ФИЛЬТР/УНИК/СОРТ — когда нужен сам динамический список строк или справочник.
Не знаете, что учить дальше?
Проверьте свой уровень Excel за 7–10 минут
18 рабочих ситуаций покажут сильные стороны и темы, которые дадут вам самый заметный прирост.
Практика по системе
Закрепите формулы на рабочих задачах
В курсах Tablicus теория связана с практикумами, таблицами и автоматической проверкой результата.