Sub ReverseWords() Dim i As Long Dim OldString As Variant Dim RevText As Variant OldString = Split(Selection.Text, "") For i = 0 To UBound(OldString) OldString(i) = StrReverse(OldString(i)) Next RevText = Join(OldString, " ") MsgBox RevText End Sub