Cette macro fonctionne pour tous les prénoms qu'ils soient composés ou pas.
Elle ne détecte que le premier "espace" du nom.
Donc pour les noms composés ça risque de donner des résultats bizarres:
Laframboise Marie-Eve = Marie-Eve Laframboise
Laframboise Laviolette Marie = Laviolette Marie Laframboise
Les données sont dans la colonne A et les résultats dans B
Code :
Sub InverseNomPrenom()
Dim N(50)
Dim Nom As String
Dim NomPrenom As String
Application.ScreenUpdating = False
Range("A1").Select
Do
NomPrenom = ActiveCell
For x = 1 To Len(NomPrenom)
N(x) = Mid(NomPrenom, x, 1)
Nom = Left(NomPrenom, x)
If N(x) = " " Then
Prenom = Mid(NomPrenom, x)
ActiveCell.Offset(0, 1) = Trim(Prenom & " " & Nom)
Exit For
End If
Next
ActiveCell.Offset(1, 0).Select
Loop Until ActiveCell = ""
Range("A1").Select
End Sub