Посчитать количество слов в тексте vba excel
Одна из самых полезных задач по работе с текстом в Excel – это автоматический подсчет количества слов или определенных в строке. Существует много разных способов для решения данной задачи, но мы рассмотрим самый простой.
Формула подсчета количества слов в ячейке Excel
Как посчитать количество слов и пробелов в ячейках Excel? Фактически слова в строке разделены символом пробела. Между каждым словом 1 пробел, поэтому пробелов в текстовой строке всегда на единицу меньше чем слов. Простая формула для понимания: количество слов в строке = количество пробелов +1. Другими словами нам нужна формула для подсчета количества пробелов в строке и к результату ее вычисления добавить +1.
Чтобы составить формулу в Excel для подсчета количества слов нам нужно выполнить 3 шага:
- Определить длину исходной строки с пробелами.
- Определить длину исходной строки без пробелов.
- Вычесть от длины строки с пробелами – строку без пробелов.
Выше указанная формула содержит 3 функции. Одна из них функция ПОДСТАВИТЬ, а далее идут две одинаковые ДЛСТР.
Сначала функция ДЛСТР проверяет длину текстовой стирки пока в оригинальном виде в ячейке A1.
Далее функция ПОДСАВИТЬ удаляет из исходной строки все пробелы:
Помещение функции ПОДСАВИТЬ в качестве аргумента для функции ДЛСТР позволяет нам автоматически определить длину строки без пробелов.
Обратите внимание! На этом этапе следует добавить +1, ведь последнее слово в тексте не имеет соответствующего ему пробела.
Дальше остались только вычесть от длины оригинального текста длину строки без пробелов и в результате мы автоматически получаем количество слов:
Практическое применения выше описных формул наиболее часто встречается при анализе больших списков ключевых фраз.
Формула подсчета количества символов в ячейке Excel
Как посчитать количество символов в ячейках Excel? Аналогичным способом мы можем подсчитать количество любых символов в слове или целой строке. Для примера посчитаем количество букв «С» в слове Миссисипи:
- Определяем длину исходного слова «Миссисипи» = 9.
- Определяем длину этого же слова, но без буквы «С» - «Мииипи» = 6.
- Вычитаем от исходного слова слово без буквы «С»: 9-6=3.
В результате формула автоматически посчитала количество букв «С» во всех словах:
Примечание. В формуле используется функция ПРОПИСН чтобы сделать все буквы большими в словах так как функция ПОДСТАВИТЬ чувствительна к регистру. А мы ищем большую букву «С» в каждом слове названия городов.
Не редко перед пользователями офисных приложений встает задача по определению количества слов в текстовом значении, например в текстовой переменной или в ячейке Excel. Существуют различные методы подсчета количества слов в строке, один из них приводится ниже.
Принцип подсчета слов
Представленный метод подсчета слов в строке (в текстовом значении) основан на том, что:
1. В строке отсутствуют лишние пробелы, то есть два соседних слова отделены друг от друга одним пробелом;
2. словом считается любая комбинация символов, справа или слева от которой находится пробел;
3. количество слов в строке на единицу больше количества разделяющих их пробелов.
Таким образом, для того чтобы подсчитать количество слов в строке, необходимо предварительно удалить из этой строки все лишние пробелы, затем посчитать количество оставшихся пробелов и увеличить их на единицу, эта величина и будет соответствовать количеству слов в строке.
Количество пробелов в строке определяется при помощи циклического перебора символов заданной строки и сравнения каждого символа с символом пробела. При совпадении счетчик пробелов увеличивается на единицу.
Процедура по подсчету слов в строке
Для того чтобы узнать количество слов в ячейке Excel, можно использовать пользовательскую функцию.
Функция для подсчета слов в ячейках Excel
Если скопировать и вставить этот программный код в личную книгу макросов, функция становится доступна для использования через мастер функций. Функция добавляется в категорию функций "Определенные пользователем".
Надстройка для определения количества слов в ячейках Excel
Можно сохранить представленный выше программный код не в личную книгу макроса, а в модуль VBA-проекта, после чего сохранить рабочую книгу как надстройку. Внесение в программный код некоторых дополнений позволяет добавлять функцию в любую категорию, например в "Текстовые", кроме того появляется возможность добавить к функции краткое описание. Пример надстройки можно скачать бесплатно.
Читайте также: