Comment extraire des données avec un delimiteur ?
Résolu
choudoudou.
Messages postés
9
Date d'inscription
Statut
Membre
Dernière intervention
-
choudoudou. -
choudoudou. -
Bonjour,
Voila mon problème est que j'ai dans une seule et même cellule :
||A|B|C|D|E|
||F|G|H|I|J|
||... etc
J'ai environ 7 lignes dans une seule et meme cellule de ce style la. Je souhaiterai extraire uniquement le deuxieme caractere de chaque ligne ici B et G pour les mettre chacun dans une cellule afin de pouvoir les exploiter.
Mon idée serait de dire je veux la donnée entre le 3eme "|" et le 4eme "|" et ainsi de suite pour chaque ligne mais je trouve rien en termes de code pour faire cela.
Si quelqu'un a une idée ce serait super !
Bonne soirée
Franck
Voila mon problème est que j'ai dans une seule et même cellule :
||A|B|C|D|E|
||F|G|H|I|J|
||... etc
J'ai environ 7 lignes dans une seule et meme cellule de ce style la. Je souhaiterai extraire uniquement le deuxieme caractere de chaque ligne ici B et G pour les mettre chacun dans une cellule afin de pouvoir les exploiter.
Mon idée serait de dire je veux la donnée entre le 3eme "|" et le 4eme "|" et ainsi de suite pour chaque ligne mais je trouve rien en termes de code pour faire cela.
Si quelqu'un a une idée ce serait super !
Bonne soirée
Franck
4 réponses
-
Bonjour,
car=split([A1],"|")(2)
(découpe dans un tableau, l'index commence à 0)
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait. -
Merci de ta réponse Eric.
Par contre à quoi sert le "(2)", est-ce pour dire de commencer à partir du 2eme "|" ?
Le problème c'est que l'indice n'est pas reconnu :
Dim car() as String
car=split([E1],"|")(2)
Workbooks("suivi-couts.xls").Worksheets("Data").Cells(2, 5).Value = car (0)
Voila ce que j'ai fait et là impossible de récupérer mon nombre d'heures.
A noter que j'ai 3 feuilles dans mon classeur, peut etre qu'il ne comprends pas qu'il faut aller dans E1 de "data" ? -
Bonjour,
j'avais fait vite sans tester, c'est (3) qu'il faut :
Si ta feuille est active et ta chaine en E :
Cells(1, 6).Value = Split(Cells(1, 5), "|")(3)
te mettra la lettre en F
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait. -
Merci Eric, en attribuant directement a la case le split ça fonctionne parfaitement.
Bonne journée !
Franck