Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Extractions multiples depuis une chaine

2 réponses
Avatar
Olivier Lucas
Bonjour!

J'essaie d'utiliser VBA pour extraire des informations d'une chaine
alphanumerique, mais je crois que c'est plus complexe qu'un simple
program et je n'y arrive pas..
J'ai des cellules sous le format suivant:

9/5/07 23d wt 12.40g
Date espace 1 ou 2 chiffres suivi de "d" espace suivi de wt, 2 espaces
puis un nombre decimal suivi de g.
Je peux aisement enlever le d, wt et g avec la fonction "remplacer"
J'aimerais que le programme me retourne 2 colonnes au final:
A B
1 23 12.40

Y a t il un moyen de faire cela?

D'avance merci!

OL

2 réponses

Avatar
LSteph
Bonsoir,

Selectionne la colonne
(débrouille toi pour que le nb de colonnes suffisant à droite soit vide)
Menu Donnnées Convertir
Délimité Espace
Suivant Suivant
Ok

--@+
lSteph

Bonjour!

J'essaie d'utiliser VBA pour extraire des informations d'une chaine
alphanumerique, mais je crois que c'est plus complexe qu'un simple
program et je n'y arrive pas..
J'ai des cellules sous le format suivant:

9/5/07 23d wt 12.40g
Date espace 1 ou 2 chiffres suivi de "d" espace suivi de wt, 2 espaces
puis un nombre decimal suivi de g.
Je peux aisement enlever le d, wt et g avec la fonction "remplacer"
J'aimerais que le programme me retourne 2 colonnes au final:
A B
1 23 12.40

Y a t il un moyen de faire cela?

D'avance merci!

OL



Avatar
charabeuh
Bonjour,


en A3 ta chaine source
en B3 la formule =STXT(A3;CHERCHE(" ";A3)+1;CHERCHE("d";A3)-CHERCHE("
";A3)-1)
en C3 la formule
=STXT(A3;CHERCHE("wt";A3)+4;CHERCHE("g";A3)-CHERCHE("wt";A3)-4)


ou en VBA
mettre la fonction dans un module

Public Function UnOuDeux(xCH, xUNouDeux)
On Error Resume Next
UnOuDeux = "#Erreur"
Select Case xUNouDeux
Case 1
UnOuDeux = Mid(xCH, InStr(xCH, " ") + 1, InStr(xCH, "d") - InStr(xCH, "
") - 1)
Case 2
UnOuDeux = Mid(xCH, InStr(xCH, "wt") + 4, InStr(xCH, "g") - InStr(xCH,
"wt") - 4)
End Select
End Function



et utiliser en B3 =UnouDeux(A3;1) et en C3 =UnouDeux(A3;2)

Bonnet de nuit !



"Olivier Lucas" a écrit dans le message de
news:
Bonjour!

J'essaie d'utiliser VBA pour extraire des informations d'une chaine
alphanumerique, mais je crois que c'est plus complexe qu'un simple
program et je n'y arrive pas..
J'ai des cellules sous le format suivant:

9/5/07 23d wt 12.40g
Date espace 1 ou 2 chiffres suivi de "d" espace suivi de wt, 2 espaces
puis un nombre decimal suivi de g.
Je peux aisement enlever le d, wt et g avec la fonction "remplacer"
J'aimerais que le programme me retourne 2 colonnes au final:
A B
1 23 12.40

Y a t il un moyen de faire cela?

D'avance merci!

OL