I was going to post this separately, but your write up is so nicely done, I
figured I would just post my alternate code here instead.<g> While I haven't
time tested it, usually Split is slower than Mid, InStr and Len (even when
all of them are combined) which could make a difference in a large loop;
hence the reason I am posting this. As I said, I didn't time test it, so the
difference could be large or it may be quite small; but, whichever, I figure
it is always nice to see alternatives.
Sub NameSwapper()
Dim R As Range
For Each R In Selection
R.Value = Mid(R.Value & " " & R.Value, InStr(R.Value, ", ") + 2,
Len(R.Value) - 1)
Next
End Sub
I would point out that both your code and mine will fail if the first name
is something like Mary Anne (I have a friend with this first name). I can
modify my code to use InStrRev instead of InStr to handle this, but then the
code would fail with a last name like Della Rossa (I have a friend with this
last name).
Rick