inversion dans une cellule

esteou

XLDnaute Nouveau
Voilà mon probléme.
En colonne A1, j'ai une liste qui se compose d'un prénom suivi d'un nom (ou simplement d'un nom):

Jean Dupont
Jacques Durand
Bibilolo
Jean-Marie Martin.

Y-a-t-il un moyen pour inverser l'ordre et obtenir le nom + le prénom :

Dupont Jean
Durand Jacques
Bibilolo
Martin Jean-Marie

Merci.

Claude
 
G

Guest

Guest
Re : inversion dans une cellule

Bonjour,

Dans la Colonne B mettre la formule suivante:
=SI(NON(ESTERREUR(TROUVE(" ";A1)));GAUCHE(A1;TROUVE(" ";A1)-1) & SUBSTITUE(A1;GAUCHE(A1;TROUVE(" ";A1)-1);"");A1)

Cette formule recherche le premier espace entre le prénom et le nom Donc les prénom composé doivent avoir leur membre séparés par un trait d'union ou autre. Si elle ne trouve pas d'espace, elle renvoie la valeur de la cellule.
 

porcinet82

XLDnaute Barbatruc
Re : inversion dans une cellule

Salut,

Une solution similaire a celle d'Hasco mais par macro (en supposant que les données se trouvent dans la colonne A, le résultat étant retourné dans la colonne B) :
Code:
Sub test()
Dim tablo() As String, rep As String
Dim i As Integer, k As Integer
For i = 1 To Range("A65536").End(xlUp).Row
    tablo = Split(Cells(i, 1).Value, " ")
    For k = UBound(tablo) To 0 Step -1
        rep = rep & " " & tablo(k)
    Next k
    Cells(i, 2).Value = Mid(rep, 2, Len(rep))
    rep = ""
Next i
End Sub

@+
 

Discussions similaires

Statistiques des forums

Discussions
313 957
Messages
2 103 976
Membres
108 841
dernier inscrit
Quenit