Перейти к содержанию
Innovialabs

Функции FILTER, SORT и UNIQUE в Google Таблицах и Excel

Практика3 мин

Коротко

FILTER отбирает строки по условиям, SORT сортирует, UNIQUE убирает повторы, а вместе они дают отчёт, который обновляется сам при изменении исходных данных, без ручных фильтров и копирования.

Короткий ответ

FILTER, SORT и UNIQUE — формулы динамических массивов. Вы пишете формулу в одну ячейку, а результат сам «разливается» на нужное число строк и столбцов. Когда в исходной таблице появляются новые строки, отчёт пересчитывается автоматически.

  • FILTER — оставляет строки, которые подходят под условия.
  • SORT — сортирует диапазон по одному или нескольким столбцам.
  • UNIQUE — возвращает список без повторов.

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

Во всех примерах ниже лист заказов: A — дата, B — клиент, C — город, D — менеджер, E — сумма, F — статус.

FILTER: живой отчёт по условию

Все оплаченные заказы:

=FILTER(A2:F100; F2:F100="Оплачен")

Несколько условий «И». Умножайте условия друг на друга — это работает и в Excel, и в Google Таблицах. Сумма в ячейке I1:

=FILTER(A2:F100; (F2:F100="Оплачен")*(E2:E100>=I1))

В Google Таблицах условия можно перечислить и отдельными аргументами: =FILTER(A2:F; F2:F="Оплачен"; E2:E>=I1).

Условия «ИЛИ». Складывайте условия:

=FILTER(A2:F100; (C2:C100="Ташкент")+(C2:C100="Самарканд"))

Пустой результат. Если ничего не найдено, Excel вернёт ошибку #CALC!, а Google Таблицы — #N/A. В Excel используйте третий аргумент, в Таблицах — IFNA:

Excel:   =FILTER(A2:F100; F2:F100="Оплачен"; "Нет данных")
Sheets:  =IFNA(FILTER(A2:F; F2:F="Оплачен"); "Нет данных")

Чтобы менеджер выбирал условие сам, ссылайтесь не на текст, а на ячейку с выпадающим списком.

SORT: порядок без ручной сортировки

Синтаксис различается: в Google Таблицах направление задаётся TRUE или FALSE, в Excel — 1 или −1.

Sheets:  =SORT(A2:F100; 5; FALSE)
Excel:   =SORT(A2:F100; 5; -1)

Обе формулы сортируют заказы по сумме (пятый столбец диапазона) по убыванию.

Сортировка по нескольким столбцам — сначала город по алфавиту, затем сумма по убыванию:

Sheets:  =SORT(A2:F100; 3; TRUE; 5; FALSE)
Excel:   =SORTBY(A2:F100; C2:C100; 1; E2:E100; -1)

В Excel для нескольких ключей удобнее SORTBY (в русской версии СОРТПО): после диапазона идут пары «столбец сортировки — направление».

UNIQUE: список клиентов без повторов

=UNIQUE(B2:B100)

Если в диапазоне есть пустые ячейки, в результат попадёт пустое значение (в Excel — 0). Уберите их фильтром:

=UNIQUE(FILTER(B2:B100; B2:B100<>""))

Количество уникальных клиентов — =COUNTA(UNIQUE(FILTER(B2:B100; B2:B100<>""))).

Третий аргумент UNIQUE со значением TRUE оставляет только значения, которые встречаются ровно один раз, — например, клиентов с одним заказом:

=UNIQUE(B2:B100; FALSE; TRUE)

Комбинации

Отсортированный список клиентов из Ташкента, у которых есть оплаченные заказы:

=SORT(UNIQUE(FILTER(B2:B100; (C2:C100="Ташкент")*(F2:F100="Оплачен"))))

Читайте формулу изнутри наружу: отобрать, убрать повторы, отсортировать.

Сводка «клиент — сумма» в Excel: в H2 список клиентов =SORT(UNIQUE(B2:B100)), в I2 сумма по каждому =SUMIF(B2:B100; H2#; E2:E100). Знак # ссылается на весь разлитый диапазон, и сводка растёт вместе со списком.

Частые ошибки

  • #SPILL! в Excel или #REF! в Google Таблицах — ячейки, куда должен разлиться результат, заняты. Очистите место под формулой.
  • Разные размеры диапазонов. Диапазон данных и диапазоны условий должны начинаться и заканчиваться на одних строках.
  • Числа, сохранённые как текст. Условие E2:E100>=I1 не сработает для текстовых сумм — сначала приведите данные к числам.
  • Ручные правки в результате. Внутри разлитого диапазона ничего не вводите: это сломает формулу.
  • Целые столбцы в Excel. Ссылки вида B:B работают, но замедляют книгу; лучше оформить данные как умную таблицу.

Частые вопросы

Автофильтр меняет вид исходной таблицы и общий для всех пользователей. FILTER строит отдельный отчёт, не трогает данные и обновляется сам.

Поможем с этим

Если хотите не разбираться самим, а получить результат — этим мы занимаемся каждый день.

Обсудить проект

Читайте также

Есть идея или задача? Расскажите нам

Ответим в течение рабочего дня и предложим решение. Консультация бесплатная.