Все слова, длиной более пяти символов, начинать с прописной буквы - VBA

Узнай цену своей работы

Формулировка задачи:

Добрый день! Требуется написать программу в VBA: Дан текст, слова которого отделяются друг от друга пробелами. Вывести исходный текст, таким образом, чтобы все слова, длиной более пяти символов, начинались бы с прописной буквы. Я написал, но у меня выходит что все слова выводит с прописной буквы, как изменить мой код-формирование строки вывода (именно изменит мой) чтоб только слова длинной более 5 выводило с прописной ?

Решение задачи: «Все слова, длиной более пяти символов, начинать с прописной буквы»

textual
Листинг программы
Private Sub CommandButton1_Click()
Dim sp
Dim str, str1 As String
Const N = 100
Dim M(N) As String
Dim str_v As String
str = TextBox1.Value
 'Просмотр всех символов строки
j = 1
str = LTrim(str) ' удалить начальные пробелы из строки
For i = 1 To Len(str)
    If Mid(str, i, 1) <> " " Then
        M(j) = M(j) + Mid(str, i, 1)
    Else
' если слова отделены между собой несколькими пробелами то пропустить эту последовательность
        While Mid(str, i + 1, 1) = " "
            i = i + 1
         Wend
        ' подсчитывать слова только если за последовательностью пробелов следует слово
        If Mid(str, i + 1, 1) <> "" Then
            j = j + 1
        End If
    End If
Next i
' Формирование строки для вывода
sp = Split(TextBox1.Value, "")
For j = 0 To UBound(sp)
  If Len(Replace(sp(j), ",", "")) > 5 Then 'если длина строки без запятых больше 5 символов то
            sp(j) = UCase(Left(sp(j), 1)) & Right(sp(j), Len(sp(j)) - 1) 'делаем первую букву прописной
        End If
    Next
TextBox2.Value = Join(sp, " ")
End Sub
 
Private Sub TextBox1_Change()
 
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4 из 5
Похожие ответы