Assuming the (malformatted) name in A31 =TRIM(RIGHT(A31;LEN(A31)-SEARCH("[:alpha:]+[ ]*$";A31)+1))
will produce the needed helper text. The formula allows for trailing spaces in A31 as these sometimes cause annoying effects. Please note that the only thing taken as delimiter is the last not alphabetic character in front of the last contiguous sequence of alphabetic characters. This means that a “name” like “George Bush junior” will result in a simple “junior” as the value of the sorting key. What about “Henry Ford III”? You see, I would like to suggest reorganising the data source in a reasonable way. If you have the different parts of a name in different cells you may easily concatenate a compound name by a formula. The reverse procedure is much more complicated.
The formula will only work if under
‘Tools’ > ‘Options’ > ‘LibreOffice Calc’ > ‘Calculate’ > ‘General Calculations’
‘Enable regular expressions in formulae’ is checked.