Подсчет слов в таблице excel

На чтение 6 мин. Просмотров 17.5k.

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

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

строка состояния Word

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

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

Содержание

  1. Четыре разных способа посчитать слова в Excel
  2. 1. Формула для подсчета слов в ячейке
  3. 2. Подсчет слов в диапазоне ячеек
  4. 3. Подсчет количества слов во всей таблицы с кодом VBA
  5. 4. Подсчет определенного слова/текстовой строки в диапазоне
  6. Заключение

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

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

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

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

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

И формула будет (текст в ячейке A1):

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

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

Пример работы формулы

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

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

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

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

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

Разделение формулы на части

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

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

= 20 — 16 +1

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

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

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

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

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

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

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

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

Function MyWordCount(rng As Range) As Integer

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

End Function

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

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

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

Работа пользовательской функции

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

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

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

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

= СУММПРОИЗВ(ДЛСТР(A1:A11)-ДЛСТР(ПОДСТАВИТЬ(A1:A11; » «;»»))+1)

Работа формулы подсчета слов в диапазоне

В приведенной выше формуле 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

S = Application.WorksheetFunction.Trim(rng.Text)

N = 0

If S <> vbNullString Then

N = Len(S) - Len(Replace(S, " ", "")) + 1

End If

WordCnt = WordCnt + N

Next rng

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

End Sub

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

Демонстрация работы макроса

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

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

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

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

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

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

Формула подсчета конкретного слова

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

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

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

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

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

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

Работа первой части формулы

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

Работа второй части формулы

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

Работа третьей части формулы

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

Работа четвертой части формулы

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

Заключение

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

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

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

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

Количество слов в ячейке

Задача

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

Решение

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

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

=IF(ISBLANK(A1);0;LEN(TRIM(A1))-LEN(SUBSTITUTE(A1;» «;»»))+1)

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

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

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

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

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

Вот и все. Просто и изящно :)

Ссылки по теме

  • Делим текст на куски
  • Склеивание текста из нескольких ячеек

На чтение 5 мин Опубликовано 26.01.2021

В Microsoft Office Excel можно подсчитывать количество элементов, прописанных в ячейках табличного массива. Для этого обычно используют простую формулу. Подробная информация по этой теме будет изложена в данной статье.

Содержание

  1. Методы подсчёта слов в ячейках Excel
  2. Способ 1: ручной подсчёт
  3. Способ 2: использование Microsoft Office Word
  4. Способ 3: применение специальной функции
  5. Как посчитать количество символов в ячейке Excel
  6. Способ 1: ручной подсчёт
  7. Способ 2: использование функции для подсчёта длины строки
  8. Способ 3: Применение специальных сайтов в интернете
  9. Заключение

Методы подсчёта слов в ячейках Excel

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

Способ 1: ручной подсчёт

Этот метод не совсем подходит для MS Excel, вне зависимости от ее версии, т.к. данная программа задействует инструменты автоматизированного вычисления. Однако счёт вручную также целесообразно рассмотреть в рамках статьи. Для его реализации необходимо:

  1. Составить исходный табличный массив.
  2. Выделить нажатием левой клавишей мышки ячейку, в которой необходимо подсчитать слова.
  3. Сосчитать набранные элементы.
  4. Чтобы не терять собственное время, можно скопировать содержимое ячейки, которое целиком отображается в строке для ввода формул, и вставить его в рабочее поле специального сайта для быстрого подсчёта количества знаков, слов.

Обратите внимание! Считать слова в ячейках Excel вручную нецелесообразно, если в таблице содержится слишком много информации.

Способ 2: использование Microsoft Office Word

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

  1. Выделить ЛКМ слова в ячейке таблички, чтобы в дальнейшем подсчитать их количество.
  2. Переключить клавиатуру на английскую раскладку и одновременно зажать клавиши «Ctrl+С», чтобы скопировать выделенные символы в буфер обмена.
  3. Открыть текстовый редактор MS Word.
  4. Поставить курсор мышки на начало рабочего поля программы и нажать с клавиатуры на кнопки «Ctrl+V».
  5. Проверить результат. Скопированные элементы из Excel должны без проблем вставиться в Word.
  6. Обратить внимание на левый нижний угол рабочего листа программы. В панели задач будет указано количество слов, которые в данный момент напечатаны.

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

Дополнительная информация! В Excel отсутствует инструмент для подсчёта слов в ячейках, т.к. данное программное обеспечение не предназначено для работы с текстом.

Способ 3: применение специальной функции

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

  1. Выделить любую пустую ячейку на рабочем листе программы. В нее в дальнейшем будет выводиться результат вычислений.
  2. Поставить курсор мыши в строку для ввода формул сверху программы и написать с клавиатуры следующее выражение: «=ДЛСТР(СЖПРОБЕЛЫ(аргумент))-ДЛСТР(ПОДСТАВИТЬ(аргумент;» «;»»))+1».
  3. Вместо слова «Аргумент» указывается адрес ячейки, в которой проводится вычисление.

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

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

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

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

Иногда у пользователей Эксель возникает необходимость в подсчёте числа знаков в той или иной ячейке табличного массива. Сосчитать символы проще, чем слова. Для этой цели есть несколько способов, которые будут рассмотрены далее.

Способ 1: ручной подсчёт

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

Важно! В ячейках таблицы Microsoft Office Excel может быть очень много знаков, на ручной подсчёт которых уйдёт немалое количество времени. Поэтому вручную считать актуально, если речь идёт о небольшой табличке.

Способ 2: использование функции для подсчёта длины строки

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

  1. Левой клавишей манипулятора выделить пустую строчку, ячейку, в которую будет выводиться результат подсчёта знаков.
  2. Переместить курсор мышки в строку для ввода формул сверху окна программы и прописать выражение: «=ДЛСТР(аргумент)». Вместо аргумента указывается адрес конкретной ячейки, где надо узнать число знаков.

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

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

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

Способ 3: Применение специальных сайтов в интернете

Можно пойти более сложным путём для подсчета количества символов в ячейках табличного массива Excel. Он предполагает выполнение следующих действий по алгоритму:

  1. Аналогичным образом выделить ЛКМ нужную ячейку табличного массива и переместить курсор мыши в строку для ввода формул сверху программы.
  2. Теперь той же клавишей манипулятора надо выделить содержимое ячейки в строке ввода.
  3. Нажать ПКМ по любой области выделенного выражения и в окошке контекстного типа кликнуть по варианту «Копировать».
  4. Войти в браузер на ПК и перейти на любой сайт для подсчета количества символов.
  5. По рабочей области сайта щёлкнуть ПКМ и выбрать вариант «Вставить».
  6. Ознакомиться с получившемся значением. После выполнения вышеуказанных манипуляций сайт выдаст всю информацию о длине текста.

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

Обратите внимание! На подобных сайтах даже можно подсчитать количество предложений в указанном тексте.

Заключение

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

Оцените качество статьи. Нам важно ваше мнение:

  • Формула для подсчета количества слов в ячейке Excel
  • Как посчитать определенные слова в ячейке
  • Как посчитать определенные слова в столбце/диапазоне
  • Подсчет всех уникальных слов в столбце с выводом количества повторений

Как всем известно, MS Excel не умеет оперировать такой сущностью, как слова, в его мире есть только ячейки и символы в них, среди которых пробелы не являются значимым разделителем. Поэтому подсчёт слов как штатная операция в Excel, в отличие от Word, отсутствует. Но при желании можно решить задачу различными способами. Рассмотрим их!

Этот лайфхак стар как мир – если:

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

то слов в ячейке всегда на единицу больше, чем количество пробелов в ней.

Простейшая формула, которая решит задачу, подробно описана в статье про функцию ДЛСТР, а я лишь приведу её оттуда:

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

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

Первый вариант – проверить длину ячейки после удаления лишних пробелов и вернуть 0 слов, если 0 символов, а если нет, применять формулу выше

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

Второй вариант мне нравится больше. Можно добавить к ячейке любое слово заранее и из результата подсчета слов вычесть единицу. А поскольку она изначально прибавлялась к количеству пробелов, то из изначальной формулы можно удалить “+ 1” :)

Формула максимально лаконична, если использовать в качестве этого мнимого слова короткий символ, например, точку:

=ДЛСТР(СЖПРОБЕЛЫ(A1&" ."))-ДЛСТР(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(A1&" .");" ";""))

Как посчитать определенные слова в ячейке

Если заранее известно, какое слово вы хотите проверить на количество вхождений в строку, решить задачу не так уж сложно. Здесь также поможет связка функций ДЛСТР и ПОДСТАВИТЬ. И поскольку функция ПОДСТАВИТЬ регистрозависимая, для приведения символов в один регистр нужна будет еще функция СТРОЧН или ПРОПИСН (какая вам больше нравится).

Нужно:

  • измерить длину исходной строки
  • функцией ПОДСТАВИТЬ удалить из нее искомое слово, оба значения преобразовав в нижний или верхний регистр перед заменой на пустоту
  • измерить длину результата
  • вычесть из первого значения второе
  • остаток поделить на длину слова

А вот формула:

=(ДЛСТР(A1)-ДЛСТР(ПОДСТАВИТЬ(СТРОЧН(A1);СТРОЧН(B1);"")))/ДЛСТР(B1)

подсчет встречаемости слова в ячейке по вхождению (может входить в другие слова)

Но, если вы хотите посчитать слова целиком, а не по вхождению, есть пара важных моментов:

  • потребуется небольшое шаманство с добавлением лишних пробелов. Нужно добавить их в конце и начале ячейки, а также вместо одного пробела между словами сделать минимум два (иначе, если одинаковые слова идут подряд, при замене с пробелами удалится лишь одно из двух).
  • предварительно нужно будет удалить знаки препинания (иначе они будут мешаться при подстановке)
  • исходный текст и искомое лучше заранее перевести в нижний или верхний регистр, чтобы не делать формулу еще сложнее

Если произвести все эти процедуры прямо в формуле (кроме регистра), она будет выглядеть так:

=(ДЛСТР(" "&ПОДСТАВИТЬ(A1;" ";"  ")&" ")-ДЛСТР(ПОДСТАВИТЬ(" "&ПОДСТАВИТЬ(A1;" ";"  ")&" ";" "&B1&" ";"")))/ДЛСТР(" "&B1&" ")

Здесь в ячейке A1 – текст, в котором ищем слово, а в ячейке B1 – само это слово. А так это выглядит на практике:

Подсчет встречаемости точного слова в ячейке

Как посчитать определенные слова в столбце/диапазоне

Этот вопрос не самый однозначный, т.к. ищущий не всегда сам до конца осознаёт, что ищет. Объясню подробнее :)

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

Для первой достаточно будет функции СЧЁТЕСЛИ, для второго варианта потребуется формула массива, аналогичная по своей механике той, что описана выше (подсчёт слов в одной ячейке).

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

Подсчет всех уникальных слов в столбце с выводом количества повторений

В Excel отсутствует всякая возможность провернуть подобное ни штатными функциями, ни процедурами. Однако, поскольку у меня и моих коллег-маркетологов часто возникает такая потребность, я разработал и добавил такую процедуру в свою надстройку для Excel !SEMTools.

Важная особенность в том, что она умеет не только считать слова, но любые n-граммы (двусловники, трехсловники и т.д.), и помимо подсчета слов, может строить сводные таблицы сопоставленных с текстом метрик. Подробно можно почитать в статье и посмотреть на видео ниже.

Как посчитать количество слов в ячейках Excel с помощью формул

Ингода ячейки таблиц Excel бывают заполнены не только цифрами, но и — в определенных обстоятельствах — большим количеством слов. Посчитать слова внутри одной ячейки вы можете, воспользовавшись формулой «=ДЛСТР(ячейка)-ДЛСТР(ПОДСТАВИТЬ(ячейка;» «;»))+1». Вместо слова «ячейка» необходимо подставить номер ячейки, в которой вы хотите подсчитать количество слов, например, А3.

Если вы хотите узнать общее количество слов, то воспользуйтесь формулой «=(СУММА(ячейка1,ячейка2,ячейка3)», где нужно заменить слово «ячейка» на обозначение соответствующей ячейки, содержащей количество слов, полученное из абзаца выше.

Понравилась статья? Поделить с друзьями:
  • Подсчет слов в столбце excel
  • Подсчет сколько раз встречается значение в excel
  • Подсчет символов в тексте в excel
  • Подсчет символов в столбце excel
  • Подсчет количество ячеек с определенным значением в excel