Séparer le contenu d'une cellule excel en 2 avec une macro
Résolu
Jemis1979
Messages postés
7
Date d'inscription
Statut
Membre
Dernière intervention
-
Jemis1979 Messages postés 7 Date d'inscription Statut Membre Dernière intervention -
Jemis1979 Messages postés 7 Date d'inscription Statut Membre Dernière intervention -
Bonjour les amoureux d'Excel et de ses macros,
Mon problème est dit dans le titre, lorsque que j'ai ça dans une cellule :
[SAV / Berlin]
Je voudrais 2 cellules :
[SAV] [Berlin]
Jusque là je peux y arriver...
Là où ça se complique, c'est que j'ai environ 4000 cellules à séparer et ce, toutes les semaines.
D'où l'idée de macro. Et que toutes ces cellules se présentent différemment. Le seul point commun est le : "espace"/"espace", ce qui me créer la séparation visuelle des infos.
Exemples :
[SAV / Berlin] --> [SAV] [Berlin]
[BATIMENT H / CU102] --> [BATIMENT H] [CU102]
[LOCAL C / arm5/1] --> [LOCAL C] [arm5/1]
J'espère avoir été assez clair dans mon besoin...
Merci à vous !
Mon problème est dit dans le titre, lorsque que j'ai ça dans une cellule :
[SAV / Berlin]
Je voudrais 2 cellules :
[SAV] [Berlin]
Jusque là je peux y arriver...
Là où ça se complique, c'est que j'ai environ 4000 cellules à séparer et ce, toutes les semaines.
D'où l'idée de macro. Et que toutes ces cellules se présentent différemment. Le seul point commun est le : "espace"/"espace", ce qui me créer la séparation visuelle des infos.
Exemples :
[SAV / Berlin] --> [SAV] [Berlin]
[BATIMENT H / CU102] --> [BATIMENT H] [CU102]
[LOCAL C / arm5/1] --> [LOCAL C] [arm5/1]
J'espère avoir été assez clair dans mon besoin...
Merci à vous !
3 réponses
-
Bonsoir
Pour découper un texte suivant un delimiteur connu, il y a la fonction split https://www.qwant.com/?q=vba+split&client=brz-brave
Par contre en vba, je ne suis pas sûr que le delimiteur puisse être lui même une chaîne de caractères (et là j’ai pas de quoi tester).
Si c’est le cas, une solution est d’abord de remplacer/
par un caractère que tu es certain de ne jamais trouver dans tes cellules.
-
Re,
Un autre méthode :Option Explicit Sub test() Dim rng As Range With Worksheets(1) ' à adapter Set rng = .Range("A1").CurrentRegion rng.Replace " / ", Chr(1), xlPart rng.TextToColumns Destination:=.Range("A1"), DataType:=xlDelimited, Other:=True, OtherChar:=Chr(1) End With End Sub
-
Bon bah, l'option remplacer " / " par "@" puis splitter les cellules en délimité via "@" a parfaitement fonctionnée.
Merci pour tout !