If your data is reasonably uniform then it's quite simple:
suppose data in A1 thru A5 is:
A1= Last First 1111 address St, City, ST, Zip
A2= Last First 2222 address St, City, ST, Zip
A3= Last First 3333 address St, City, ST, Zip
A4= Last First 4444 address St, City, ST, Zip
in a cell that you want Last First to display input formula as
follows but after you input =CLEAN( ... replace B with what's in B) (which is LEFT(C) ) then replace C with what's in C) and continue on until the formula is complete:
Note that D has 30 blank spaces enclosed by double quotes after the second comma ( , )
A) =CLEAN(B)
B) LEFT(C)
C) SUBSTITUTE(D),40
D) (G5," "," <30 spaces inserted here> ",2)
The formula will look like this when complete:
=CLEAN(LEFT(SUBSTITUTE(G5,""," 30 blanks",2),40))
I did it this way to explain what happened:
initially: firstname last name
first, I SUBSTITUTEd the second instance of a blank in your target cell with 30 blanks to make sure that the address was well away from the firstname lastname
we get: firstname lastname <30 spaces> 1111 addr..etc
Next, I took only the first 40 characters on the LEFT
we get: firstname lastname (with extra spaces up to 40 characters in total length for the string)
Finally, we CLEAN the result of any extra spaces
we get: firstname lastname (with NO spaces)
Read carefully and IT WILL WORK.
Hope it helps!