Подсчет количества слов в тексте, начинающихся с "а" - VBA
Формулировка задачи:
Как мне решить вот эту задачу?
Произвести подсчет числа слов в тексте начинающихся с символа "а"?
Решение задачи: «Подсчет количества слов в тексте, начинающихся с "а"»
textual
Листинг программы
Option Explicit
Sub Counting_words()
'
'Подсчёт слов исключая союзы, знаки и числа
'by the fever brain
'
'на самом деле список союзов гораздо внушителнее, здесь я указал наиболее расспространенные
'Вот сайт где можно посмотреть этот список: [url]http://moirus.ru/podgotovka-k-ege/spisok-souzov[/url]
'Текст по умолчанию:
Const txt$ = "Самая яркая особенность этого ВАЗ 2108 из Ярославля находится под капотом. Открыв капот вы не увидите там ничего лишнего. Такие же чистые бежевые крылья, моторный щит и сам двигатель. И всё! Никаких лишних проводов, аккумулятора, ничего лишнего."
Const souse$ = "в же и из или на не о об под" 'Союзы
Const p = " ", pp = p & p 'Пробелы
Dim newtx$, num$, i&, v
newtx$ = InputBox("Введите ваш текст", , txt) & p
For i = 33 To 63: num = num & p & Chr(i): Next 'Создание списка исключающих знаков
For Each v In Split(Mid$(num, 2)): newtx = Replace(newtx, v, p): Next
'Удаление знаков припенания и чисел коды ANSI от 33 до 63
For Each v In Split(souse): newtx = Replace(newtx, p & v & p, p, Compare:=1): Next
While InStr(1, newtx, pp): newtx = Replace(newtx, pp, p): Wend 'Удаление пустот
newtx = Trim$(newtx) 'удаление передних и задних пробелов
If Len(newtx) > 0 Then i = UBound(Split(Trim$(newtx))) + 1 Else i = 0
MsgBox "Текст:" & vbLf & txt & vbLf & vbLf & "Количество слов в тексте = " & i
End Sub