Как посчитать количество значений в Excel по условию: пошаговое руководство

Подсчёт количества ячеек, удовлетворяющих определённому условию, — одна из самых востребованных операций в Microsoft Excel. Без этого навыка невозможно анализировать данные, строить отчёты или автоматизировать рутинные задачи. Например, вам может понадобиться узнать, сколько клиентов сделали заказ на сумму больше 10 000 рублей, сколько товаров осталось на складе с истекающим сроком годности или сколько сотрудников имеют стаж работы более 5 лет.

В этой статье мы разберём 5 основных способов подсчёта по условию: от простых функций СЧЁТЕСЛИ до продвинутых инструментов вроде СЧЁТЕСЛИМН и сводных таблиц. Вы узнаете, как избежать типичных ошибок, какие формулы работают быстрее, и как адаптировать решения под разные версии Excel (включая Excel 365 и Excel 2019). Особое внимание уделим нюансам работы с текстом, числами и датами — они часто становятся источником путаницы.

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

1. Функция СЧЁТЕСЛИ: простой подсчёт по одному условию

Функция СЧЁТЕСЛИ (COUNTIF в английской версии) — самый базовый инструмент для подсчёта ячеек, соответствующих заданному критерию. Она работает с одним условием и поддерживает числа, текст, даты и логические выражения.

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

=СЧЁТЕСЛИ(диапазон; условие)
  • 📌 Диапазон — область ячеек, в которой ведётся поиск (например, A2:A100).
  • 🔍 Условие — критерий отбора (может быть числом, текстом в кавычках, выражением типа >50 или ссылкой на ячейку).

Примеры использования:

  • 📊 Подсчёт ячеек со значением "Да": =СЧЁТЕСЛИ(B2:B20; "Да")
  • 💰 Подсчёт чисел больше 1000: =СЧЁТЕСЛИ(C2:C50; ">1000")
  • 📅 Подсчёт дат позже 01.01.2026: =СЧЁТЕСЛИ(D2:D30; ">01.01.2026")

Ограничение функции: она не умеет работать с несколькими условиями одновременно. Например, если нужно посчитать ячейки, где значение больше 100 и меньше 500, СЧЁТЕСЛИ не подойдёт — потребуется СЧЁТЕСЛИМН (о ней в следующем разделе).

2. СЧЁТЕСЛИМН: подсчёт по нескольким критериям

Когда требуется учитывать два и более условий, на помощь приходит функция СЧЁТЕСЛИМН (COUNTIFS). Она анализирует несколько диапазонов и соответствующих им критериев, возвращая количество ячеек, которые удовлетворяют всем условиям одновременно.

Синтаксис:

=СЧЁТЕСЛИМН(диапазон1; условие1; [диапазон2; условие2]; ...)
  • 🔄 Все диапазоны должны быть одинакового размера (иначе Excel вернёт ошибку #ЗНАЧ!).
  • 📏 Максимальное количество пар "диапазон-условие" — 127Excel 365).

Примеры:

  • 🛒 Подсчёт заказов от клиента "Иванов" на сумму > 5000:
    =СЧЁТЕСЛИМН(A2:A100; "Иванов"; B2:B100; ">5000")
  • 📅 Подсчёт продаж в январе 2026 года по региону "Москва":
    =СЧЁТЕСЛИМН(C2:C200; ">01.01.2026"; C2:C200; "<31.01.2026"; D2:D200; "Москва")
Как работает логика "И" и "ИЛИ" в СЧЁТЕСЛИМН?

Функция СЧЁТЕСЛИМН всегда использует логику "И" — ячейка учитывается только если все условия выполнены. Для логики "ИЛИ" (хотя бы одно условие) нужно суммировать несколько СЧЁТЕСЛИ:

=СЧЁТЕСЛИ(A2:A10; ">10") + СЧЁТЕСЛИ(A2:A10; "<5")

Важный нюанс: если в условии используются даты, их нужно вводить либо как текст в кавычках (">01.01.2026"), либо как результат функции ДАТА (">"&ДАТА(2026;1;1)). В противном случае Excel может неправильно интерпретировать формат.

📊 Какой функцией вы чаще пользуетесь для подсчёта?
СЧЁТЕСЛИ
СЧЁТЕСЛИМН
Фильтром
Сводными таблицами
Другой вариант

3. Подсчёт текстовых значений: нюансы и ошибки

Работа с текстом в условиях имеет свои особенности. Например, функция СЧЁТЕСЛИ чувствительна к регистру только в некоторых версиях ExcelExcel 365 регистр учитывается, а в Excel 2016 — нет). Также важно помнить про подстановочные знаки:

  • 🌟 * — заменяет любое количество символов (например, "*ов" найдёт "Иванов", "Петров").
  • 🔍 ? — заменяет один символ (например, "?ан" найдёт "Иван", "Петр").

Примеры формул для текста:

ЗадачаФормулаПояснение
Подсчёт ячеек, содержащих "ООО"=СЧЁТЕСЛИ(A2:A50; "ООО")Ищет "ООО" в любом месте текста
Подсчёт ячеек, начинающихся на "А"=СЧЁТЕСЛИ(B2:B100; "А*")Регистрозависимо в Excel 365
Подсчёт пустых ячеек=СЧЁТЕСЛИ(C2:C200; "")Не учитывает ячейки с формулами, возвращающими ""

Критическая ошибка: если в условии указать просто "ООО" (без звёздочек), Excel будет искать точные совпадения. То есть ячейка с текстом "ООО Рога и Копыта" не попадёт в подсчёт, так как содержит лишние символы.

⚠️ Внимание: Функция СЧЁТЕСЛИ не умеет работать с регулярными выражениями. Для сложных текстовых условий (например, поиска по шаблону email) потребуется СУММПРОИЗВ или пользовательская функция на VBA.

4. Работа с датами: как избежать ошибок формата

Даты — самый коварный тип данных в Excel. Часто пользователи получают ошибку #ЗНАЧ! или некорректный результат из-за того, что Excel воспринимает дату как текст или число. Чтобы этого избежать, следуйте правилам:

  • 📅 Всегда используйте функцию ДАТА для динамических дат:
    =СЧЁТЕСЛИ(A2:A100; ">="&ДАТА(2026;1;1))
  • 🔄 Для диапазонов дат комбинируйте СЧЁТЕСЛИМН:
    =СЧЁТЕСЛИМН(A2:A100; ">="&ДАТА(2026;1;1); A2:A100; "<="&ДАТА(2026;1;31))

Типичные ошибки:

  • ❌ Указание даты в формате "01.01.2026" без кавычек (Excel воспримет это как вычитание).
  • ❌ Использование текстового формата для ячеек с датами (например, если дата хранится как строка "01-янв-2026").

Ячейки отформатированы как "Дата"|В формуле даты обёрнуты в кавычки или использована функция ДАТА|Диапазоны в СЧЁТЕСЛИМН совпадают по размеру|Учтена разница часовых поясов (если данные импортированы)

-->

Если даты хранятся как текст, предварительно преобразуйте их с помощью функции ДАТАЗНАЧ или инструмента Текст по столбцам (вкладка Данные).

5. Продвинутые методы: СУММПРОИЗВ и сводные таблицы

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

СУММПРОИЗВ для гибких условий

Функция СУММПРОИЗВ (SUMPRODUCT) позволяет комбинировать несколько условий с логикой "И"/"ИЛИ". Например, чтобы посчитать количество строк, где в столбце A значение "Да", а в столбце B — число > 100:

=СУММПРОИЗВ(--(A2:A100="Да"); --(B2:B100>100))

Двойной минус (--) преобразует ИСТИНА/ЛОЖЬ в 1/0.

Сводные таблицы для динамического анализа

Если данные часто меняются, удобнее создать сводную таблицу:

  1. Выделите исходный диапазон.
  2. Нажмите Вставка → Сводная таблица.
  3. Перетащите поле с условием в область Фильтры, а поле для подсчёта — в Значения (Excel автоматически применит СЧЁТ).

6. Типичные ошибки и как их исправить

Даже опытные пользователи сталкиваются с ошибками при подсчёте по условию. Вот самые распространённые:

ОшибкаПричинаРешение
#ИМЯ?Опечатка в названии функцииПроверьте синтаксис (например, СЧЁТЕСЛИ, а не СЧЁТЕСЛИМ)
#ЗНАЧ!Несовпадение размеров диапазонов в СЧЁТЕСЛИМНУбедитесь, что все диапазоны одинакового размера
Некорректный результатДаты хранятся как текстИспользуйте ДАТАЗНАЧ или измените формат ячеек
#ДЕЛ/0!Деление на ноль в формулеПроверьте, не используете ли вы СУММПРОИЗВ с пустыми диапазонами
⚠️ Внимание: Если формула возвращает правильный результат вручную, но не обновляется при изменении данных, проверьте настройки вычислений: Формулы → Параметры вычислений → Автоматически.

Ещё одна частая проблема — скрытые символы (пробелы, неразрывные пробелы, переносы строк). Чтобы их обнаружить, используйте функцию ПЕЧСИМВ:

=ПЕЧСИМВ(A2)=ДЛСТР(A2)

Если результат ЛОЖЬ, в ячейке есть невидимые символы. Удалите их функцией СЖПРОБЕЛЫ.

Часто задаваемые вопросы

Можно ли использовать СЧЁТЕСЛИ для подсчёта цветных ячеек?

Нет, СЧЁТЕСЛИ не умеет анализировать формат ячеек. Для подсчёта по цвету понадобится VBA-макрос или надстройка вроде Kutools for Excel.

Как посчитать количество уникальных значений по условию?

Используйте комбинацию СУММПРОИЗВ и ЕСЛИОШИБКА:

=СУММПРОИЗВ(--(ЧАСТОТА(ЕСЛИ(($A$2:$A$100="Да")*($B$2:$B$100<>""); $B$2:$B$100); $B$2:$B$100)>0))

Формула массива — подтвердите её нажатием Ctrl+Shift+Enter (в старых версиях Excel).

Почему СЧЁТЕСЛИ не считает ячейки с формулами, возвращающими пустую строку?

Функция СЧЁТЕСЛИ игнорирует ячейки, которые выглядят пустыми, но содержат формулу типа =ЕСЛИ(A1=0; ""; A1). Чтобы их посчитать, используйте =СЧЁТЕСЛИ(диапазон; "=") или СЧИТАТЬПУСТОТЫ.

Как посчитать количество ячеек, где текст содержит перенос строки?

Перенос строки в ячейке (введённый через Alt+Enter) имеет код CHAR(10). Используйте:

=СЧЁТЕСЛИ(A2:A100; ""&СИМВОЛ(10)&"")

Есть ли альтернатива СЧЁТЕСЛИМН в Excel 2003?

В Excel 2003 функции СЧЁТЕСЛИМН нет. Замените её на СУММПРОИЗВ:

=СУММПРОИЗВ((A2:A100="Условие1")*(B2:B100="Условие2"))

Не забудьте подтвердить формулу как массива (Ctrl+Shift+Enter).