This is ugly but it sort of works. I am assuming you have the string in A1.
You need an intermediate cell (well, not really, but it makes it a bit easier to read).
In the intermediate cell (B1) put this formula:
=IF(NOT(ISERROR(SEARCH(" ",A1,LEN(A1)-1))),SEARCH(" ",A1,LEN(A1)-1),
IF(NOT(ISERROR(SEARCH(" ",A1,LEN(A1)-2))),SEARCH(" ",A1,LEN(A1)-2),
IF(NOT(ISERROR(SEARCH(" ",A1,LEN(A1)-3))),SEARCH(" ",A1,LEN(A1)-3),
IF(NOT(ISERROR(SEARCH(" ",A1,LEN(A1)-4))),SEARCH(" ",A1,LEN(A1)-4),
IF(NOT(ISERROR(SEARCH(" ",A1,LEN(A1)-5))),SEARCH(" ",A1,LEN(A1)-5),
IF(NOT(ISERROR(SEARCH(" ",A1,LEN(A1)-6))),SEARCH(" ",A1,LEN(A1)-6),
IF(NOT(ISERROR(SEARCH(" ",A1,LEN(A1)-7))),SEARCH(" ",A1,LEN(A1)-7),0)))))))
This gives you the position of the last space, as long as the last word is not longer than 7 chars - you can add more if statements to make this longer, but there will have to be a limit somewhere. Then its just a matter of =RIGHT(A1,LEN(A1)-B1) to get the actual word.
This works even if there is only one word or the whole string is shorter than your maximum word length.
Still, ugly...