Excel количество слов в ячейке
Количество слов в ячейке в Excel
Рассмотрим простой способ подсчета количества слов в ячейке в Excel.
Стандартной формулы подсчета слов в ячейке в Excel нет, поэтому итоговая формула будет состоять из нескольких формул.
Итоговая формула выглядит следующим образом:
=ЕСЛИ(ЕПУСТО( A2 );0;ДЛСТР(СЖПРОБЕЛЫ( A2 ))-ДЛСТР(ПОДСТАВИТЬ( A2 ;» «;»»))+1)
Краткое описание используемых функций (с подробным описанием можно ознакомиться в конце статьи):
- СЖПРОБЕЛЫ — удаляет из текста лишние пробелы;
- ПОДСТАВИТЬ — производит замену старого текста на новый в текстовой строке;
- ДЛСТР — рассчитывает количество знаков в строке;
- ЕПУСТО — проверяет является ли ячейка пустой.
Алгоритм подсчета
Алгоритм строится на том факте, что количество слов в любой фразе всегда на 1 больше, чем количество пробелов.
Однако фраза может начинаться с пробела или по ошибке могут встречать двойные пробелы, поэтому в первую очередь удалим лишние проблемы из исходной фразы с помощью функции СЖПРОБЕЛЫ и подсчитаем длину фразы функцией ДЛСТР:
Теперь рассчитаем длину фразы без учета пробелов, для этого воспользуемся функций ПОДСТАВИТЬ, которая удалит символ пробела (если быть точнее, то заменит » » на «»):
Рассчитываем разницу между двумя данными значениями, прибавляем 1 и получаем итоговое количество слов в ячейке:
=ДЛСТР(СЖПРОБЕЛЫ( A2 ))-ДЛСТР(ПОДСТАВИТЬ( A2 ;» «;»»))+1
Однако в случае, если ячейка пустая, то данная формула вернет значение 1, поэтому добавим в функцию проверку на непустую ячейку (если ячейка пустая, то вернется значение 0):
=ЕСЛИ(ЕПУСТО( A2 );0;ДЛСТР(СЖПРОБЕЛЫ( A2 ))-ДЛСТР(ПОДСТАВИТЬ( A2 ;» «;»»))+1)
Описание используемых функций
Функция СЖПРОБЕЛЫ:
СЖПРОБЕЛЫ(текст)
Удаляет из текста лишние пробелы (кроме одиночных пробелов между словами).
- Текст(обязательный аргумент) — текст, из которого удаляются лишние пробелы.
Функция ПОДСТАВИТЬ:
ПОДСТАВИТЬ(текст; стар_текст; нов_текст; [номер_вхождения])
Заменяет новым текстом старый текст в текстовой строке.
- Текст(обязательный аргумент) — текст, в котором происходит подстановка;
- Старый текст(обязательный аргумент) — заменяемый текст;
- Новый текст(обязательный аргумент) — текст, на который меняется старый текст;
- Номер вхождения(необязательный аргумент) — номер вхождения заменяемого фрагмента старый текст.
Функция ДЛСТР:
ДЛСТР(текст)
Возвращает количество знаков в текстовой строке.
- Текст(обязательный аргумент) — измеряемый текст.
Функция ЕПУСТО:
ЕПУСТО(значение)
Проверяет, ссылается ли данная ссылка на пустую ячейку, и возвращает значение ИСТИНА или ЛОЖЬ.
- Значение(обязательный аргумент) — ссылка на ячейку.
Количество слов в ячейке
Предположим, что в ячейке А1 у нас есть какой-то текст, а в ячейке B1 нам нужно подсчитать количество слов в этом тексте.
Простым, но красивым решением для подсчета количества слов в ячейке, будет следующая формула для B1:
=ЕСЛИ(ЕПУСТО(A1);0; ДЛСТР(СЖПРОБЕЛЫ(A1)) — ДЛСТР(ПОДСТАВИТЬ(A1;» «;»»)) +1)
Разбор полетов
Общий принцип работы формулы прост — число слов в ячейке всегда на 1 больше, чем число пробелов между словами. Таким образом, подсчитав разницу между длиной исходного текста и его же, но взятого без пробелов — мы получим в результате количество пробелов, т.е. количество слов. На случай, если где-то в тексте «для красоты» стоят по два-три пробела между словами или понатыканы пробелы перед или после текста — мы используем функцию СЖПРОБЕЛЫ (TRIM) из категории Текстовые, которая удаляет все лишние пробелы из исходного текста, кроме одиночных пробелов между словами. Таким образом в нашей формуле:
- ДЛСТР(СЖПРОБЕЛЫ(A1)) — длина исходного текста без лишних пробелов
- ДЛСТР(ПОДСТАВИТЬ(A1;» «;»»)) — длина исходного текста, в котором все пробелы заменены на пустоту, т.е. удалены, т.е. длина текста без пробелов вообще
Ну, а дальше считаем разницу и прибавляем 1, чтобы получить искомое количество слов.
Остается одна маленькая проблема: если ячейка пустая, то наша формула выдает 1. Поэтому добавим функцию ЕСЛИ (IF) , которая будет заранее проверять ячейку на предмет пустоты с помощью функции ЕПУСТО (ISBLANK) и выводить 0 либо считать число слов по нашему алгоритму.
Как посчитать количество слов в Excel
Пользователи Microsoft Word знают, на сколько полезна возможность узнать количество слов в набранном тексте. Однако, пользуясь Excel, узнать количество слов в документе не возможно штатными средствами.
В этой статье мы разберем, как с помощью формул посчитать количество слов в одной или нескольких ячейках.
Как посчитать количество слов в ячейке Excel
Для подсчета количества слов в ячейке нам потребуются функции ДЛСТР и ПОДСТАВИТЬ . Формула для учета количества слов будет выглядеть так:
=ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;” “;””))+1
Используя эту формулу для любой ячейки, вы получите значение количества слов, находящихся в ней.
Как эта формула работает?
Прежде чем мы погрузимся в то, как работает формула, предлагаю поразмышлять.
Если мы составим обычное предложение из 8 слов, то их будут разделять 7 пробелов.
Это означает, что в любом предложении слов на один больше чем пробелов. То есть, для того, чтобы посчитать количество слов в предложении, нам нужно рассчитать количество пробелов и прибавить к этому числу один.
Соответственно, наша формула работает следующим образом:
- Функция ДЛСТР в первой части формулы подсчитывает количество символов в ячейке (с учетом пробелов)
- Во второй и третьей части формулы мы комбинируем функции ДЛСТР и ПОДСТАВИТЬ для подсчета количества символов в ячейке без пробелов
- Прибавляем к полученному значению число “один”
Если вы используете эту формулу для пустой ячейки, то результат вычисления будет равен единице.
Во избежание этого, я предлагаю использовать в дополнение две функции: ЕСЛИ и ЕПУСТО . Формула будет выглядеть так:
=ЕСЛИ(ЕПУСТО(A1);0;ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(A1;” “;””))+1)
Эти две функции проверяют, есть ли текст в ячейке или она пустая. Если в ячейке нет текста, формула вернет значение “ноль”.
Как посчитать количество слов в нескольких ячейках Excel
Теперь, перейдем на более сложный уровень.
Представим, что наша задача посчитать количество слов в нескольких ячейках.
Хорошая новость заключается в том, что мы будем использовать ту же формулу, что мы рассматривали на предыдущем примере, с небольшим дополнением:
=СУММПРОИЗВ(ДЛСТР(A1:A10)-ДЛСТР(ПОДСТАВИТЬ(A1:A10;” “;””))+1)
В указанной выше формуле А1:А10 это диапазон ячеек в рамках которого мы хотим посчитать количество слов.
Как эта формула работает?
Эта формула работает по тому же принципу, что и для подсчета количества слов в одной ячейке. Разница лишь в использовании функции СУММПРОИЗВ . Она помогает нам вычислить количество слов во всем массиве данных.
Всякий раз, когда вы вводите текст в ячейку или диапазон ячеек, эти методы позволяют посчитать количество слов.
Я надеюсь, что в будущем Excel получит штатную возможность для подсчета слов.
Уверен, эти приемы помогут вам стать лучше в Excel.
отличное решение! Но на практике могут возникнуть проблемы – человек может случайно поставить лишний пробел (двойной пробел) и формула приплюсует лишнее слово! Если считаем слова в одной ячейке то проблему решим, добавив функцию сжпробелы: =ДЛСТР(СЖПРОБЕЛЫ(A1))-ДЛСТР(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(A1);” “;””))+1.
Но данный способ не работает с массивом, может Вы придумаете, как обойти данную проблему?
Формула подсчета количества слов и символов в ячейке Excel
Одна из самых полезных задач по работе с текстом в Excel – это автоматический подсчет количества слов или определенных в строке. Существует много разных способов для решения данной задачи, но мы рассмотрим самый простой.
Формула подсчета количества слов в ячейке Excel
Как посчитать количество слов и пробелов в ячейках Excel? Фактически слова в строке разделены символом пробела. Между каждым словом 1 пробел, поэтому пробелов в текстовой строке всегда на единицу меньше чем слов. Простая формула для понимания: количество слов в строке = количество пробелов +1. Другими словами нам нужна формула для подсчета количества пробелов в строке и к результату ее вычисления добавить +1.
Чтобы составить формулу в Excel для подсчета количества слов нам нужно выполнить 3 шага:
- Определить длину исходной строки с пробелами.
- Определить длину исходной строки без пробелов.
- Вычесть от длины строки с пробелами – строку без пробелов.
Выше указанная формула содержит 3 функции. Одна из них функция ПОДСТАВИТЬ, а далее идут две одинаковые ДЛСТР.
Сначала функция ДЛСТР проверяет длину текстовой стирки пока в оригинальном виде в ячейке A1.
Далее функция ПОДСАВИТЬ удаляет из исходной строки все пробелы:
Помещение функции ПОДСАВИТЬ в качестве аргумента для функции ДЛСТР позволяет нам автоматически определить длину строки без пробелов.
Обратите внимание! На этом этапе следует добавить +1, ведь последнее слово в тексте не имеет соответствующего ему пробела.
Дальше остались только вычесть от длины оригинального текста длину строки без пробелов и в результате мы автоматически получаем количество слов:
Практическое применения выше описных формул наиболее часто встречается при анализе больших списков ключевых фраз.
Формула подсчета количества символов в ячейке Excel
Как посчитать количество символов в ячейках Excel? Аналогичным способом мы можем подсчитать количество любых символов в слове или целой строке. Для примера посчитаем количество букв «С» в слове Миссисипи:
- Определяем длину исходного слова «Миссисипи» = 9.
- Определяем длину этого же слова, но без буквы «С» — «Мииипи» = 6.
- Вычитаем от исходного слова слово без буквы «С»: 9-6=3.
В результате формула автоматически посчитала количество букв «С» во всех словах:
Примечание. В формуле используется функция ПРОПИСН чтобы сделать все буквы большими в словах так как функция ПОДСТАВИТЬ чувствительна к регистру. А мы ищем большую букву «С» в каждом слове названия городов.
Как формулой Excel подсчитать количество слов?
Если есть набор (диапазон) ячеек и в каждой из них одно или несколько (может быть десятки и более) слов, то какая формула excel посчитает сколько слов в ячейке? Например, в результате должно получится: 10, 2, 6 и т.д. (то есть в первой ячейке 10 слов, во второй 6 и так далее). Какую использовать формулу?
Чтобы понять как определить сколько слов в текстовой строке (ячейке excel) необходимо сделать одно замечание. Дело в том, что признаком отделяющим одно слово от другого является » » — пробел. Соответственно, количество слов прямо связано с количеством пробелов. Задача сводится к тому, чтобы посчитать сколько пробелов в ячейке.
Если ячейка содержит единственное слово, то, очевидно, что не будет ни одного пробела (ноль пробелов). Учтем это при написании формулы.
Нижеследующая формула позволяет узнать разницу между количеством символов всего и количеством символов после удаления из текста всех пробелов.
Базовая формула для подсчета слов (количества слов):
=ДЛСТР(B4)-ДЛСТР(ПОДСТАВИТЬ(B4;» «;»»))+1
(понятно, что, текст в ячейке B4)
Поясним, для чего нужна прибавить 1 (в формуле +1). Легче всего это понять на примере.
Если у нас есть такой текст «два слова», то пробелов в этом тексте — один, а слов то два, поэтому то к определенному по формуле числу пробелов, необходимо добавить единицу.
Эта формула будет корректно работать во всех случаях, если слова в тексте разделены единственным пробелом и нет ни одного лишнего пробела ни в начале, ни в конце анализируемого текста.
Обратите внимание: применение этой формулы к пустым ячейкам — даст некорректный результат! (см. далее «продвинутый» вариант решения).
Как было сказано, первая формула, если применить ее к пустой ячейке посчитает неверно (получаем 1 — что неправильно).
Базовая формула будет некорректно работать, если между словами поставили более одного пробела.
Усовершенствуем формулу, чтобы она учитывала оба эти нюанса (пустую ячейку и много пробелов).
«Продвинутая» формула Excel для определения числа слов.
Формула Excel определения количества слов примет вид:
=ЕСЛИ(ЕПУСТО(B4);0;ДЛСТР(СЖПРОБЕЛЫ(B4))-ДЛСТР(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(B4);» «;»»))+1)
Совет: если Вы уверены, что у Вас не будет пустых ячеек и пробел, который разделяет слова в предложении — единственный — используйте первый вариант, а если не уверены — более совершенную формулу.
Предостережение: даже совершенная формула может работать некорректно по той причине, что в качестве разделителя слов будет использован т.н. «неразрывный» пробел, а также по причине неграмотного написана в самом тексте (пример: «из-за» написали не через дефис, а через пробел). Также причиной неправильной работы формулы может быть неграмотное проставление пробелов, там, где они не нужны (пример: «ладно , хорошо» — пробел после первого слова тут не нужен — не грамотно так писать).