Быстрый анализ текста и чисел в Excel
Чтобы посчитать количество слов, символов или цифр в ячейке Excel, используйте комбинацию функций LEN, SUBSTITUTE и SUMPRODUCT. Стандартной кнопки «Подсчитать слова» нет, но готовые формулы решают задачу за секунды. Ниже приведены точные инструкции для подсчета в одной ячейке и целых диапазонах данных.
Оглавление
Подсчет количества слов
В Excel слово определяется как фрагмент текста, ограниченный пробелами. Поскольку встроенной функции COUNTWORDS не существует, мы вычисляем количество пробелов и добавляем единицу.
Формула для одной ячейки
Вставьте эту формулу в любую свободную ячейку, указав адрес ячейки с текстом (например, A1):
=LEN(TRIM(A1))-LEN(SUBSTITUTE(TRIM(A1);" ";""))+1
Логика работы:
TRIMудаляет лишние пробелы в начале, конце и между словами (оставляя по одному).SUBSTITUTE(...;" ";"")удаляет все пробелы из очищенного текста.- Разница длин (
LEN) показывает количество пробелов. +1превращает количество пробелов в количество слов.
Если ячейка может быть пустой, оберните формулу в проверку, чтобы избежать ошибки (результат 1 для пустой ячейки):
=ЕСЛИ(ДЛСТР(СЖПРОБЕЛЫ(A1))=0; 0; ДЛСТР(СЖПРОБЕЛЫ(A1))-ДЛСТР(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(A1);" ";""))+1)
Подсчет слов во всем столбце
Для суммирования слов в диапазоне (например, A1:A100) используйте массивную формулу:
=СУММПРОИЗВ((ДЛСТР(СЖПРОБЕЛЫ(A1:A100))-ДЛСТР(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(A1:A100);" ";""))+1)*(A1:A100<>""))
Формула автоматически игнорирует пустые ячейки в диапазоне.
Анализ символов и длины текста
Функция ДЛСТР (или LEN в английской версии) возвращает общее количество знаков, включая пробелы и знаки препинания.
Основные варианты подсчета
| Задача | Формула (RU) | Формула (EN) | Пример результата для "Привет Мир" |
|---|---|---|---|
| Все символы (с пробелами) | =ДЛСТР(A1) | =LEN(A1) | 11 |
| Только видимые знаки (без пробелов) | =ДЛСТР(ПОДСТАВИТЬ(A1;" ";"")) | =LEN(SUBSTITUTE(A1," ","")) | 10 |
| Без пробелов и знаков препинания | =ДЛСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;" ";"");"!";"")) | (аналогично) | Зависит от текста |
Подсчет в диапазоне
Чтобы узнать общую длину текста в столбце A1:A50:
- С пробелами:
=СУММ(ДЛСТР(A1:A50)) - Без пробелов:
=СУММ(ДЛСТР(ПОДСТАВИТЬ(A1:A50;" ";"")))
Выделение и подсчет цифр
Задача усложняется, если нужно найти количество цифр внутри смешанного текста (например, "Заказ №12345"). Для этого требуется посимвольная проверка.
Количество цифр в ячейке
Эта формула перебирает каждый символ строки и проверяет, является ли он числом:
=СУММПРОИЗВ(--ЕЧИСЛО(--ПСТР(A1;СТРОКА(ДВССЫЛ("1:"&ДЛСТР(A1)));1)))
Как это работает:
ПСТРизвлекает каждый символ по очереди.--(двойное отрицание) пытается преобразовать символ в число. Если это буква, возникнет ошибка, которуюЕЧИСЛОинтерпретирует как ЛОЖЬ (0).СУММПРОИЗВскладывает единицы для всех найденных цифр.
Формула использует функцию ДВССЫЛ (INDIRECT), которая является волатильной. В очень больших таблицах (тысячи строк с такими формулами) это может незначительно замедлить пересчет файла.
Сумма значений цифр
Если в тексте "Код 753" нужно не просто посчитать количество цифр (3), а сложить их значения (7+5+3=15):
=СУММПРОИЗВ(--ПСТР(A1;СТРОКА(ДВССЫЛ("1:"&ДЛСТР(A1)));1))
Примечание: Формула сработает корректно, только если в ячейке нет букв, которые вызовут ошибку при преобразовании. Для смешанного текста лучше использовать более сложные конструкции с обработкой ошибок.
Частые ошибки при анализе
При работе с текстовыми данными в Excel пользователи часто сталкиваются со следующими проблемами:
- Лишние пробелы. Скопированный из интернета текст часто содержит неразрывные пробелы или двойные отступы. Всегда используйте
СЖПРОБЕЛЫ(TRIM) перед подсчетом слов. - Невидимые символы. Иногда в ячейках есть символы перевода строки (CHAR(10)). Функция
ДЛСТРсчитает их за один знак. Для очистки используйте=ПЕЧСИМВ(A1)(CLEAN). - Пустые ячейки. Базовая формула подсчета слов
(LEN-SUBSTITUTE)+1вернет1для пустой ячейки. Обязательно добавляйте проверку на пустоту или используйтеTRIM. - Разделители списков. В русской локали разделитель аргументов — точка с запятой (
;), в английской — запятая (,). Копируя формулы из англоязычных источников, заменяйте запятые на точки с запятой.
FAQ
Можно ли посчитать уникальные слова в ячейке? Стандартными формулами это сделать крайне сложно. Для подсчета уникальных значений проще использовать сводные таблицы или инструмент «Текст по столбцам», разбив фразу на отдельные слова, а затем применив «Удалить дубликаты».
Почему формула с ПСТР выдает ошибку #ЗНАЧ!?
Скорее всего, вы используете старую версию Excel или забыли нажать Ctrl+Shift+Enter (для версий до 2019 года), если формула не обернута в СУММПРОИЗВ. В современных версиях (Office 365, 2021) формулы массива работают автоматически.
Как посчитать слова с учетом дефисов?
Если слова вроде «кто-то» должны считаться за одно слово, стандартная формула подойдет. Если дефис должен разделять слова («кто» и «то»), замените в формуле SUBSTITUTE сначала дефисы на пробелы, а затем считайте пробелы.