Sub BacwardText()
 im workString As String
 im bacwardString As String
 im SplitString() As String
 im numberWords As Byte
workString = ' Ваша исходная строка
W = Split (workString, " " ' В данном случае слова разделены пробелом " "
SplitString() = W
numberWords = Ubound(SplitString)
For n =numberWords To 0 Step -1
bacwardString = bacwardString & SplitString(n) & " " 'желаемый результат
Next n
End Sub
'-------------------------------------------------------------------------------------------------------
' Разбиение строки на фрагменты по разделителю
'-------------------------------------------------------------------------------------------------------
Function Split(Text As String, Delimiter As String)
 im OutArray() As String, Pos As Long, newPos As Long
ReDim OutArray(0 To 0)
Pos = 1
 o
newPos = InStr(Pos, Text, Delimiter, vbTextCompare)
If newPos = 0 Then
OutArray(UBound(OutArray)) = Mid(Text, Pos)
Else
OutArray(UBound(OutArray)) = Mid(Text, Pos, newPos - Pos)
Pos = newPos + Len(Delimiter)
ReDim Preserve OutArray(0 To UBound(OutArray) + 1)
End If
Loop While newPos > 0
Split = OutArray
End Function
Sub ReverseWords()
w = Selection.Words.Count
Selection.InsertAfter vbCrLf
For i = w To 1 Step -1
Selection.InsertAfter Selection.Words(i)
'добавим пробел, если его нет в конце слова
If Right(ActiveDocument.Words(i), 1) <> " " Then Selection.InsertAfter " "
Next i
End Sub
Перед выполнением макроса нужно выделить нужную часть текста в документе, последовательность слов которого необходимо изменить. После отработки выделение будет включать в себя как исходный текст, так и обработанный.
Sub ReverseWords()
w = Selection.Words.Count
Selection.InsertAfter vbCrLf
For i = w To 1 Step -1
Selection.InsertAfter Selection.Words(i)
'добавим пробел, если его нет в конце слова
If Right(ActiveDocument.Words(i), 1) <> " " Then Selection.InsertAfter " "
Next i
End Sub
Перед выполнением макроса нужно выделить нужную часть текста в документе, последовательность слов которого необходимо изменить. После отработки выделение будет включать в себя как исходный текст, так и обработанный.
Огромное спасибо за помощь! Использовал этот метод! Всё прекрасно работает!
Извините, но от такого отношения нет желания отвечать... Не думаю, что кто-нибудь приходит сюда, чтобы выполнять чьи-то задания, указания или распоряжения... Но если приходит, то, чтобы помочь тому, кто приходит и просит о помощи.
Вам же, как мне кажется, стоило бы приложить чуть больше усилия, чтобы изучать VBA, как Вы сказали в начале.
Извините, но от такого отношения нет желания отвечать... Не думаю, что кто-нибудь приходит сюда, чтобы выполнять чьи-то задания, указания или распоряжения... Но если приходит, то, чтобы помочь тому, кто приходит и просит о помощи.
Извините, пожалуйста! Мне, действительно, нужна помощь в решении этого задания!
Вам же, как мне кажется, стоило бы приложить чуть больше усилия, чтобы изучать VBA, как Вы сказали в начале.
Да, согласен, стоило бы, но приходиться одновременно изучать и Delphi, который более важен, чем VBA, на который нет времени!