Быстрый подсчет дат в Excel: от простых списков до сложных условий
Чтобы посчитать количество дат в диапазоне ячеек Excel, используйте функцию =COUNT(диапазон). Она автоматически игнорирует текст и пустые ячейки, считая только те, что имеют формат даты или числа. Для более сложных задач — подсчета уникальных дат, значений за конкретный период или рабочих дней — применяются функции COUNTIF, UNIQUE и NETWORKDAYS.
Базовый подсчет всех заполненных дат
Самый простой сценарий: у вас есть столбец с датами, и нужно узнать, сколько записей в нем присутствует. Функция COUNT идеально подходит, так как в основе дат в Excel лежат числовые значения (порядковые номера дней).
Формула:
=COUNT(A1:A100)
Как это работает:
- Выделите ячейку для результата.
- Введите формулу, указав диапазон с датами.
- Нажмите Enter.
Функция проигнорирует текстовые комментарии, ошибки и пустые клетки, вернув чистое количество дат.
Excel хранит даты как последовательные числа (1 соответствует 1 января 1900 года). Поэтому функция COUNT, считающая числа, корректно обрабатывает даты без дополнительных настроек.
Подсчет уникальных дат в списке
Часто в отчетах одна и та же дата встречается многократно (например, несколько продаж в один день). Чтобы узнать количество уникальных дней, подход зависит от вашей версии Excel.
Для Excel 365 и Excel 2021+
Используйте связку функций UNIQUE и COUNTA:
=COUNTA(UNIQUE(A1:A100))
Эта формула динамически создает список уникальных значений и считает их количество.
Для старых версий (2019 и ниже)
Примените массивную формулу. Она делит единицу на количество повторений каждой даты, суммируя результаты:
=SUM(1/COUNTIF(A1:A100; A1:A100))
Важно: В старых версиях после ввода формулы нажмите Ctrl + Shift + Enter, чтобы она заработала как массивная (вокруг формулы появятся фигурные скобки {}).
Если в диапазоне есть пустые ячейки, формула для старых версий выдаст ошибку #ДЕЛ/0!. Убедитесь, что диапазон содержит только даты, или оберните формулу в IFERROR.
Фильтрация дат по условиям и периодам
Для аналитики часто требуется посчитать даты, попадающие в определенный промежуток времени. Здесь незаменима функция COUNTIFS (СЧЁТЕСЛИМН), позволяющая задавать несколько критериев.
| Задача | Формула | Пояснение |
|---|---|---|
| Даты после 1 марта 2026 | =COUNTIFS(A1:A100;">="&ДАТА(2026;3;1)) | Считает все даты, начиная с указанной |
| Даты за 2026 год | =COUNTIFS(A1:A100;">="&ДАТА(2026;1;1); A1:A100;"<="&ДАТА(2026;12;31)) | Диапазон «от и до» включительно |
| Конкретный месяц | =COUNTIFS(A1:A100;">="&ДАТА(2026;5;1); A1:A100;"<"&ДАТА(2026;6;1)) | Использует строгое меньше для конца месяца |
В русскоязычной версии Excel разделителем аргументов является точка с запятой (;), а функция даты называется ДАТА.
Подсчет рабочих и выходных дней
Стандартные функции подсчета не различают будни и выходные. Для этого используйте специализированные инструменты.
Количество рабочих дней между двумя датами:
=ЧИСТРАБДНИ(Дата_начала; Дата_окончания)
Функция автоматически исключает субботы и воскресенья.
Подсчет будней в списке разрозненных дат: Если у вас есть список конкретных дат в столбце, и нужно узнать, сколько из них являются рабочими днями:
=СУММПРОИЗВ(--(ДЕНЬНЕД(A1:A100;2)<=5))
Логика работы:
ДЕНЬНЕД(...; 2)возвращает номер дня недели (1 — пн, 7 — вс).- Условие
<=5отбирает только дни с понедельника по пятницу. СУММПРОИЗВсуммирует полученные истины (1).
Частые ошибки при работе с датами
Даже простые формулы могут выдать неверный результат из-за формата данных.
- Даты сохранены как текст.
Если ячейка выровнена по левому краю, Excel считает её текстом, и функция
COUNTеё проигнорирует. Решение: Выделите столбец → вкладка Данные → Текст по столбцам → Далее → Далее → Выберите формат Дата → Готово. - Ошибка #ЗНАЧ! в массивных формулах.
Возникает, если в диапазоне есть пустые клетки при использовании формулы
1/COUNTIF. Решение: Добавьте проверку:=СУММ(ЕСЛИОШИБКА(1/СЧЁТЕСЛИ(A1:A100;A1:A100);0)). - Неверный разделитель.
При копировании формул из англоязычных источников запятые
,нужно заменять на точки с запятой;.
FAQ
Как посчитать количество дат старше определенного срока?
Используйте функцию СЕГОДНЯ(). Например, чтобы найти даты старше 30 дней: =COUNTIFS(A1:A100; "<"&СЕГОДНЯ()-30).
Можно ли посчитать даты по цвету ячейки? Стандартными формулами — нет. Для этого потребуется макрос VBA или фильтрация данных вручную с последующим просмотром строки состояния.
Почему формула UNIQUE не работает?
Функция UNIQUE доступна только в подписке Microsoft 365 и версии Excel 2021. В более старых версиях используйте сводные таблицы: вставьте данные в сводную таблицу, перетащите поле даты в область «Строки», и таблица автоматически сгруппирует повторяющиеся значения.