Sub SplitByWord()
Dim avs As Variant
Dim sAdr As String
Dim sFrm As String
Dim i As Long
With ActiveCell
avs = Split(.Value, " ")
If UBound(avs) > 0 Then
With .Offset(0, 1).Resize(UBound(avs) + 1)
.Value = Application.Transpose(avs)
For i = .Rows.Count To 1 Step -1
If Len(.Cells(i, 1)) < 3 _
Or LCase(.Cells(i, 1)) = "and" _
Or LCase(.Cells(i, 1)) = "the" _
Then .Cells(i, 1).Delete shift:=xlUp
Next i
sAdr = .Address
sFrm = "if(right(" & sAdr & ", 1) <> "" "", " & sAdr & " & "" "", " & sAdr & ")"
'Debug.Print sFrm
.Value = Evaluate(sFrm)
End With
End If
End With
End Sub