Подсчет текстовых значений в таблицах

Иван Корнев·12.04.2026·3 мин

Чтобы посчитать ячейки, содержащие только текст в Excel, используйте формулу =СУММПРОИЗВ(--ЕТЕКСТ(A1:A100)) для всех версий или =СЧЁТЗ(ФИЛЬТР(A1:A100; ЕТЕКСТ(A1:A100))) для Excel 365/2021. Эти методы игнорируют числа, даты и пустые клетки, оставляя только строковые значения.

Выбор метода в зависимости от версии Excel

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

Для современных версий (Excel 365, 2021)

Используйте функцию ФИЛЬТР. Она наглядно отбирает нужные данные перед подсчетом. Формула:

=СЧЁТЗ(ФИЛЬТР(A1:A100; ЕТЕКСТ(A1:A100)))

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

  1. ЕТЕКСТ проверяет каждую ячейку диапазона.
  2. ФИЛЬТР оставляет только те, где результат ИСТИНА.
  3. СЧЁТЗ подсчитывает количество отфильтрованных элементов.

Если нужно исключить ячейки, содержащие только пробелы, добавьте условие длины: =СЧЁТЗ(ФИЛЬТР(A1:A100; (ЕТЕКСТ(A1:A100))*(ДЛСТР(СЖПРОБЕЛЫ(A1:A100))>0)))

Для старых версий (2019, 2016 и ранее)

Функция ФИЛЬТР недоступна. Используйте связку СУММПРОИЗВ и ЕТЕКСТ. Формула:

=СУММПРОИЗВ(--ЕТЕКСТ(A1:A100))

Логика работы:

  • ЕТЕКСТ возвращает массив логических значений (ИСТИНА/ЛОЖЬ).
  • Двойной минус -- преобразует их в числа (1 и 0).
  • СУММПРОИЗВ суммирует единицы, давая итоговое количество.

Не используйте функцию СЧЁТЕСЛИ с маской "*" для этой задачи. Она посчитает все непустые ячейки, включая числа и даты, так как для Excel они тоже являются содержимым.

Учет специфических условий

Стандартные формулы могут требовать доработки в зависимости от структуры ваших данных.

Исключение ошибок и пустых строк

Если в диапазоне встречаются ошибки (#Н/Д, #ЗНАЧ!), функция ЕТЕКСТ автоматически вернет для них ЛОЖЬ, поэтому они не попадут в подсчет. Однако ячейки, содержащие формулы, возвращающие пустую строку "", могут быть учтены как текст в некоторых контекстах.

Для гарантированного подсчета только «видимого» текста без скрытых формул-пустышек:

=СУММПРОИЗВ(--ЕТЕКСТ(A1:A100); --(A1:A100<>""))

Подсчет ячеек, содержащих конкретный текст

Если задача стоит не просто найти любой текст, а ячейки с определенным словом (например, «Отчет»):

=СЧЁТЕСЛИ(A1:A100; "*Отчет*")

Звездочки * означают любое количество символов до и после искомого слова.

Сравнение методов подсчета

ЗадачаФормула (Универсальная)Формула (Excel 365)Примечание
Только текст=СУММПРОИЗВ(--ЕТЕКСТ(A1:A100))=СЧЁТЗ(ФИЛЬТР(A1:A100; ЕТЕКСТ(A1:A100)))Игнорирует числа и даты
Все непустые=СЧЁТЗ(A1:A100)=СЧЁТЗ(A1:A100)Считает текст, числа, ошибки
Только числа=СЧЁТ(A1:A100)=СЧЁТ(A1:A100)Игнорирует текст
Слово в тексте=СЧЁТЕСЛИ(A1:A100;"слово")=СЧЁТЕСЛИ(A1:A100;"слово")Регистронезависимый поиск

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

  1. Путаница между СЧЁТ и СЧЁТЗ.

    • СЧЁТ считает только числа.
    • СЧЁТЗ считает всё, что не пусто (текст + числа + ошибки).
    • Для чистого текста нужна проверка типа данных (ЕТЕКСТ).
  2. Ячейки с пробелами. Пользователь мог случайно поставить пробел в пустой ячейке. Для стандартного ЕТЕКСТ пробел — это текст. Если нужно игнорировать такие случаи, используйте комбинацию с функцией СЖПРОБЕЛЫ (TRIM), как показано в совете выше.

  3. Даты считаются текстом? Нет. В Excel даты хранятся как числа. Формула с ЕТЕКСТ корректно проигнорирует даты, даже если ячейка отформатирована как текст, но содержит числовое значение даты.

FAQ

Вопрос: Как посчитать цветные ячейки с текстом? Ответ: Стандартными формулами это сделать нельзя. Потребуется создание пользовательской функции на VBA или использование надстроек.

Вопрос: Работает ли этот метод в Google Таблицах? Ответ: Да, синтаксис полностью совпадает. Используйте =COUNTA(FILTER(A1:A100; ISTEXT(A1:A100))) (в английской версии) или русские аналоги функций.

Вопрос: Почему формула возвращает 0, хотя текст явно есть? Ответ: Проверьте, не записан ли текст как результат формулы, возвращающей ошибку, или не включен ли ручной расчет книги (вкладка «Формулы» -> «Параметры вычислений» -> «Автоматически»).