Вот таким макросом можно. В модуль листа его - ПКМ на ярлык листа - Исходный текст
[vba]Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
dl0_ = 40
x_ = Range("A1")
Application.EnableEvents = 0
Range("A2").MergeArea.ClearContents
If Len(x_) > dl0_ Then
ar = Split(x_)
For i = 0 To UBound(ar)
dl_ = dl_ + Len(ar(i))
If dl_ < dl0_ Then
x1_ = x1_ & " " & ar(i)
Else
x1_ = Trim(x1_)
x2_ = Replace(x_, x1_ & " ", "")
Range("A1") = x1_
Range("A2") = x2_
Exit For
End If
Next i
End If
Application.EnableEvents = 1
End If
End Sub
[/vba]
Конечно для Вас же гораздо удобнее было бы на реальном файле, но к нему легко подставить - заменяете А1, А2 и 40 (макс длина)