MyTetra Share
Делитесь знаниями!
Как подсчитать количество слов в строке
Время создания: 16.03.2019 23:43
Текстовые метки: количество слов
Раздел: Разные закладки - VBA - Excel - Cells
Запись: xintrea/mytetra_db_adgaver_new/master/base/15189754759792zu7w8v/text.html на raw.githubusercontent.com

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

Подробности

Категория: Макросы Excel

Опубликовано: 28 апреля 2015

Не редко перед пользователями офисных приложений встает задача по определению количества слов в текстовом значении, например в текстовой переменной или в ячейке Excel. Существуют различные методы подсчета количества слов в строке, один из них приводится ниже.

Принцип подсчета слов

Представленный метод подсчета слов в строке (в текстовом значении) основан на том, что:

1. В строке отсутствуют лишние пробелы, то есть два соседних слова отделены друг от друга одним пробелом;

2. словом считается любая комбинация символов, справа или слева от которой находится пробел;

3. количество слов в строке на единицу больше количества разделяющих их пробелов.

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

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

Процедура по подсчету слов в строке

'Процедура для подсчета слов в предложении

Option Explicit
Sub Podschet_slov()
Dim iStr As String  'исходная строка, текстовое значение
Dim b As String     'строка без лишних пробелов
Dim x As String     'текущий символ в строке
Dim i As Integer    'номер текущего символа
Dim j As Integer    'счетчик пробелов
    iStr = " Я пришел к тебе с приветом рассказать, что солнце встало! "
    b = Trim(iStr)
    j = 0
        For i = 1 To Len(b)
            x = Mid(b, i, 1)
            If x = " " Then j = j + 1
        Next i
        MsgBox j + 1
End Sub

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

Функция для подсчета слов в ячейках Excel

Function КОЛСЛОВ(СТРОКА As String) As Integer

    b = Application.Trim(СТРОКА)
    j = 0
        For i = 1 To Len(b)
            x = Mid(b, i, 1)
            If x = " " Then j = j + 1
        Next i
    СТРОКА = j + 1
End Function

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

Так же в этом разделе:
 
MyTetra Share v.0.65
Яндекс индекс цитирования