Как посчитать количество слов в экселе

Как посчитать количество слов в экселе

Пользователи Microsoft Word знают, на сколько полезна возможность узнать количество слов в набранном тексте. Однако, пользуясь Excel, узнать количество слов в документе не возможно штатными средствами.

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

Как посчитать количество слов в ячейке Excel

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

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

Как эта формула работает?

Прежде чем мы погрузимся в то, как работает формула, предлагаю поразмышлять.

Если мы составим обычное предложение из 8 слов, то их будут разделять 7 пробелов.

Это означает, что в любом предложении слов на один больше чем пробелов. То есть, для того, чтобы посчитать количество слов в предложении, нам нужно рассчитать количество пробелов и прибавить к этому числу один.

Соответственно, наша формула работает следующим образом:

  1. Функция ДЛСТР в первой части формулы подсчитывает количество символов в ячейке (с учетом пробелов)
  2. Во второй и третьей части формулы мы комбинируем функции ДЛСТР и ПОДСТАВИТЬ для подсчета количества символов в ячейке без пробелов
  3. Прибавляем к полученному значению число “один”

Если вы используете эту формулу для пустой ячейки, то результат вычисления будет равен единице.

Во избежание этого, я предлагаю использовать в дополнение две функции: ЕСЛИ и ЕПУСТО . Формула будет выглядеть так:

Эти две функции проверяют, есть ли текст в ячейке или она пустая. Если в ячейке нет текста, формула вернет значение “ноль”.

Как посчитать количество слов в нескольких ячейках Excel

Теперь, перейдем на более сложный уровень.

Представим, что наша задача посчитать количество слов в нескольких ячейках.

Хорошая новость заключается в том, что мы будем использовать ту же формулу, что мы рассматривали на предыдущем примере, с небольшим дополнением:

=СУММПРОИЗВ(ДЛСТР(A1:A10)-ДЛСТР(ПОДСТАВИТЬ(A1:A10;” “;””))+1)

В указанной выше формуле А1:А10 это диапазон ячеек в рамках которого мы хотим посчитать количество слов.

Как эта формула работает?

Эта формула работает по тому же принципу, что и для подсчета количества слов в одной ячейке. Разница лишь в использовании функции СУММПРОИЗВ . Она помогает нам вычислить количество слов во всем массиве данных.

Всякий раз, когда вы вводите текст в ячейку или диапазон ячеек, эти методы позволяют посчитать количество слов.

Я надеюсь, что в будущем Excel получит штатную возможность для подсчета слов.

Уверен, эти приемы помогут вам стать лучше в Excel.

Есть одна штука, которую я бы хотел иметь в Excel: подсчет слов в ячейке.

Читайте также:  Держатель для телефона в машину какой лучше

Если вы работаете в MS Word, в строке состояния есть встроенная опция, которая показывает, сколько слов на листе.

В Word есть опция для подсчета слов, но не в Excel. Вы можете посчитать количество ячеек, в которых есть текст, но не фактические слова в них.

В Excel в нашем распоряжении есть функции, с которыми мы можем посчитать почти все. Вы можете создать формулу, которая сможет посчитать слова в ячейке.

Четыре разных способа посчитать слова в Excel

Сегодня в этой статье вы научитесь считать слова в Excel в ячейке или диапазоне ячеек или даже во всей таблице.

Также я покажу вам, как посчитать определенное слово из диапазона ячеек. Теперь без всяких церемоний, давайте начнем.

1. Формула для подсчета слов в ячейке

Сочетание функций ДЛСТР с ПОДСТАВИТЬ

Формула такая(текст в ячейке A1):

Когда вы ссылаетесь на ячейку, используя эту формулу, она вернет 5 в результате.

И да, у вас есть 5 слов в ячейке.

Как формула работает?

Прежде чем перейти к этой формуле, просто подумайте. В обычном предложении, если у вас восемь слов, у вас определенно будет 7 пробелов в этих словах. Правильно? Это означает, что у вас всегда будет на одно слово больше, чем пробелов.

Идея проста: если вы хотите посчитать слова, подсчитайте пробелы и добавьте единицу.

Теперь, чтобы понять эту формулу, вам нужно разделить ее на три части.

В первой части мы использовали функцию ДЛСТР (LEN) для подсчета количества символов в ячейке A1. А во второй и третьей части мы объединили ПОДСТАВИТЬ (SUBSTITUTE) с ДЛСТР (LEN), чтобы удалить пробелы из ячейки и затем подсчитать символы.

Наше уравнение выглядит так:

  • 20 — общее количество символов с пробелами
  • 16 — символы без пробелов

Когда вы вычтете одно из другого, вы получите количество пробелов, и вам останется добавить один. В результате возвращается число 5, что является общим количеством слов в ячейке.

Когда вы используете приведенную выше формулу, она вернет 1, даже если ячейка пуста, поэтому лучше обернуть ее функцией ЕСЛИ (IF), чтобы избежать этой проблемы.

= ЕСЛИ(ЕПУСТО (A1);0; ДЛСТР(A1) — ДЛСТР(ПОДСТАВИТЬ(A1; » «; «»)) + 1)

Эта формула сначала проверяет ячейку и возвращает количество слов, только если в ячейке есть значение.

Пользовательская функция

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

Function MyWordCount(rng As Range) As Integer

MyWordCount = UBound(Split(rng.Value, " "), 1) + 1

End Function

Давайте я расскажу вам, как ее использовать.

  • Прежде всего, введите этот код в редакторе VBA.
Читайте также:  Ведьмак 3 не работает клавиатура

  • Затем вернитесь на свой рабочий лист и введите «= MyWordCount(» и сошлитесь на ячейку, в которой у вас есть значение.

И она вернет количество слов.

2. Подсчет слов в диапазоне ячеек

Теперь давайте перейдем на следующий уровень. Здесь вам нужно будет посчитать слова уже в диапазоне ячеек вместо одной ячейки.

Хорошая новость! Можно использовать ту же формулу (добавив небольшое изменение), которую мы использовали выше.

Вот эта формула:

В приведенной выше формуле A1: A11 — это диапазон ячеек, при вводе формулы в результате получим 55.

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

Эта формула работает так же, как и первый метод, но только чуть сложнее. Разница лишь в том, что мы завернули ее в СУММПРОИЗВ (SUMPRODUCT) и ссылаемся на весь диапазон вместо одной ячейки.

Вы помните, что СУММПРОИЗВ (SUMPRODUCT) может работать с массивами? Поэтому, когда вы используете эту функцию, она возвращает массив, в котором у вас есть количество слов для каждой ячейки. Далее она суммирует эти цифры и сообщает вам количество слов в столбце.

3. Подсчет количества слов во всей таблицы с кодом VBA

Этот код является одним из списка полезных макросов, который я использую в своей работе, и он может помочь вам подсчитать все слова на листе.

Sub Word_Count_Worksheet()

Dim WordCnt As Long

Dim rng As Range

Dim S As String

Dim N As Long

For Each rng In ActiveSheet.UsedRange.Cells

If S <> vbNullString Then

End If

MsgBox "Всего " & Format(WordCnt, "#,##0") & " слов на активном листе"

End Sub

Когда вы запустите его, он покажет окно сообщения с количеством слов, которые у вас есть в активном листе.

4. Подсчет определенного слова/текстовой строки в диапазоне

Здесь у нас другая ситуация. Допустим, нам нужно посчитать определенное слово в диапазоне ячеек или проверить, сколько раз значение появляется в столбце.

Разберем на примере.

Ниже у нас есть диапазон из четырех ячеек, и из этого диапазона нам нужно посчитать количество появлений слова «понедельник».

Вот формула для этого:

= СУММПРОИЗВ ((ДЛСТР (A1:A4) — ДЛСТР (ПОДСТАВИТЬ (A1:A4; «понедельник»; «»)) / ДЛСТР(«понедельник»))

И когда вы введете ее, она возвратит количество понедельников. Ответ — 4.

Формула возвращает количество слов (частоту слова) в диапазоне, а не количество ячеек, в которых есть это слово.

Понедельник встречается четыре раза в трех ячейках.

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

Чтобы понять эту функцию, вам снова нужно разделить ее на четыре части.

Читайте также:  Значения вводных слов с примерами

В первой части функция ДЛСТР (LEN) возвращает массив количества символов в ячейках.

Вторая часть возвращает массив подсчета символов в ячейках, удалив слово «понедельник».

В третьей части функция ДЛСТР (LEN) возвращает длину символов слова «понедельник».

После этого вычитаем первую часть из второй, а затем делим ее на третью часть. Возвращен массив с количеством слов «понедельник» в каждой ячейке.

В четвертой части СУММПРОИЗВ (SUMPRODUCT) возвращает сумму этого массива и дает количество понедельников в диапазоне.

Заключение

Всякий раз, когда вы печатаете какой-то текст в ячейке или диапазоне ячеек, вы можете использовать эти методы для контроля количества слов.

Я мечтаю, что когда-нибудь в будущем в Excel появится эта опция. Ну а пока будем пользоваться этими замечательными методами.

Я надеюсь, что статья была полезной для вас. Какой метод вам понравился больше всех?

Не забудьте поделиться своими мнениями со мной в разделе комментариев, для меня это важно. И, пожалуйста, не забудьте поделиться со своими друзьями, я уверен, что они это оценят.

Задача

Предположим, что в ячейке А1 у нас есть какой-то текст, а в ячейке B1 нам нужно подсчитать количество слов в этом тексте.

Решение

Простым, но красивым решением для подсчета количества слов в ячейке, будет следующая формула для B1:

=ЕСЛИ(ЕПУСТО(A1);0; ДЛСТР(СЖПРОБЕЛЫ(A1)) — ДЛСТР(ПОДСТАВИТЬ(A1;" ";"")) +1)

Разбор полетов

Общий принцип работы формулы прост — число слов в ячейке всегда на 1 больше, чем число пробелов между словами. Таким образом, подсчитав разницу между длиной исходного текста и его же, но взятого без пробелов — мы получим в результате количество пробелов, т.е. количество слов. На случай, если где-то в тексте "для красоты" стоят по два-три пробела между словами или понатыканы пробелы перед или после текста — мы используем функцию СЖПРОБЕЛЫ (TRIM) из категории Текстовые, которая удаляет все лишние пробелы из исходного текста, кроме одиночных пробелов между словами. Таким образом в нашей формуле:

  • ДЛСТР(СЖПРОБЕЛЫ(A1)) — длина исходного текста без лишних пробелов
  • ДЛСТР(ПОДСТАВИТЬ(A1;" ";"")) — длина исходного текста, в котором все пробелы заменены на пустоту, т.е. удалены, т.е. длина текста без пробелов вообще

Ну, а дальше считаем разницу и прибавляем 1, чтобы получить искомое количество слов.

Остается одна маленькая проблема: если ячейка пустая, то наша формула выдает 1. Поэтому добавим функцию ЕСЛИ (IF) , которая будет заранее проверять ячейку на предмет пустоты с помощью функции ЕПУСТО (ISBLANK) и выводить 0 либо считать число слов по нашему алгоритму.

Ссылка на основную публикацию
Как поставить напоминалку на андроиде
Привет всем. Нужно ли вам напоминать о каких-либо событиях? Я думаю напоминания не помешают никому. В силу своей занятости или...
Как пользоваться microsoft office access
Введение В современном мире человеку приходится сталкиваться с огромными массивами однородной информации. Эту информацию необходимо упорядочить каким-либо образом, обработать однотипными...
Как пользоваться steam link
Несколько лет назад американская компания Valve , знакомая многим по непотопляемому Steam и таким знаменитым сериям игр, как Half-Life, Team...
Как поставить пароль на покупку фильмов ростелеком
Интерактивное ТВ от Ростелеком предлагает абонентам огромное многообразие телеканалов различного содержания. Многие из них совершенно не рассчитаны на младшую аудиторию....
Adblock detector