Excel Mac : Changer ordre des mots au sein d'une même cellul
Résolu
francois8484
-
francois8484 -
francois8484 -
Bonjour,
Je dois changer l'ordre des noms et prénoms en supprimant la virgule mais en gardant le slash, sans doute l'exemple sera plus parlant :
Actuellement j'ai en A1 = CAGE, JOHN / MARTIELLO, DAVIDE / UGOLETTI, PAOLO
Je souhaiterai en A1 : JOHN CAGE / DAVIDE MARTIELLO / PAOLO UGOLETTI
Après plusieurs recherches, je n'ai pas trouvé de résultats probant, donc si quelqu'un à une idée je l'en remercie grandement.
Bien à vous
François
Je dois changer l'ordre des noms et prénoms en supprimant la virgule mais en gardant le slash, sans doute l'exemple sera plus parlant :
Actuellement j'ai en A1 = CAGE, JOHN / MARTIELLO, DAVIDE / UGOLETTI, PAOLO
Je souhaiterai en A1 : JOHN CAGE / DAVIDE MARTIELLO / PAOLO UGOLETTI
Après plusieurs recherches, je n'ai pas trouvé de résultats probant, donc si quelqu'un à une idée je l'en remercie grandement.
Bien à vous
François
A voir également:
- Excel Mac : Changer ordre des mots au sein d'une même cellul
- Liste déroulante excel - Guide
- Adresse mac - Guide
- Aller à la ligne excel mac - Guide
- Word et excel gratuit - Guide
- @ Sur mac - Guide
2 réponses
Bonjour
Avec une fonction personnalisée (macro)
https://www.cjoint.com/c/LFvov1lfurB
Alt-F11 pour accéder au code (dans Module 1)
Cdlmnt
Avec une fonction personnalisée (macro)
Option Explicit Public Function InverseOrdre(ByVal s As String) Dim rv As Long, rs As Long, ss As String rs = InStr(1, s, "/") If rs = 0 Then rv = InStr(1, s, ",") InverseOrdre = Right(s, Len(s) - rv - 1) & "," & Left(s, rv - 1) Else ss = Left(s, rs - 1) rv = InStr(1, ss, ",") InverseOrdre = Right(ss, Len(ss) - rv - 1) & "," & Left(ss, rv - 1) & " / " & InverseOrdre(Right(s, Len(s) - rs)) End If End Function
https://www.cjoint.com/c/LFvov1lfurB
Alt-F11 pour accéder au code (dans Module 1)
Cdlmnt
Oups, j'ai oublié de supprimer les virgules
Cdlmnt
Public Function InverseOrdre(ByVal s As String) Dim rv As Long, rs As Long, ss As String rs = InStr(1, s, "/") If rs = 0 Then rv = InStr(1, s, ",") InverseOrdre = Right(s, Len(s) - rv - 1) & Left(s, rv - 1) Else ss = Left(s, rs - 1) rv = InStr(1, ss, ",") InverseOrdre = Right(ss, Len(ss) - rv - 1) & Left(ss, rv - 1) & " / " & InverseOrdre(Right(s, Len(s) - rs)) End If End Function
Cdlmnt