Extraction une partie des données d'une cellule

SUM

XLDnaute Occasionnel
Bonsoir,

Est-il possible d'extraire dans chaque cellule les caractère TUT et LAL suivi du chiffre (0.93 et 1.3528) et de coller cette information dans la cellule adjacente (B1, B2,.....n) , sachant que le nbre de caractère avant TUT (ou CALL) varie. Ainsi de suite pour un nombre n de cellule dans la colonne A

Merci pour votre aide

Cordialement
 

Pièces jointes

  • extraction.xls
    30 KB · Affichages: 166
  • extraction.xls
    30 KB · Affichages: 177
  • extraction.xls
    30 KB · Affichages: 171

mth

XLDnaute Barbatruc
Re : Extraction une partie des données d'une cellule

Bonsoir Sum,

Un essai par formule avec ce que j'ai compris (pas sûr...)

Pour extraire ces caractères dans une autre cellule:

Code:
=STXT($A1;CHERCHE("µ";SUBSTITUE($A1;" ";"µ";3))+1;NBCAR($A1)-CHERCHE("µ";SUBSTITUE($A1;" ";"µ";5))+1)

ou pour extraire les caractères de la cellule A1 sauf ceux là:
Code:
=SUBSTITUE($A1;STXT($A1;CHERCHE("µ";SUBSTITUE($A1;" ";"µ";3))+1;NBCAR($A1)-CHERCHE("µ";SUBSTITUE($A1;" ";"µ";5))+1);"")

Bonne soirée,

mth
 

SUM

XLDnaute Occasionnel
Re : Extraction une partie des données d'une cellule

Bonsoir,

La première formule fait donne exactement le résultat attendu. Cependant, je dois avouer que mes connaissances ne vont pas jusque là. Comment cette formule fonctionne-t-elle? Quel est le rôle exact de "µ"?

Encore merci pour votre aide
 

mth

XLDnaute Barbatruc
Re : Extraction une partie des données d'une cellule

re :)

Pour cette formule, j'ai eu l'impression que tes données étaient structurées, à savoir que la chaîne à extraire commençait après le 3ème espace, et se terminait au 5ème espace; à partir de là en décomposant un peu:

Cette partie de la formule:
Code:
SUBSTITUE($A1;" ";"µ";3)
permet de remplacer le 3ème espace par un caractère rare qui a peu de chance de se trouver dans la cellule, cette formule renvoie donc
"GTRE / fftrtµTUT 0.93 22112010"

On peut donc utiliser la fonction CHERCHE() pour trouver la position de ce caractère:
Code:
CHERCHE("µ";SUBSTITUE($A1;" ";"µ";3))
cette partie de la formule renvoie 13, j'ajoute 1 pour me positionner après cet espace

La fonction STXT() va donc extraire de la callule A1 les caractères à partir du 14ème.

Pour déterminer le nombre de caractères à extraire:
Code:
NBCAR($A1)
renvoie le nombre de caractères de la cellule A1, soit 30

Code:
SUBSTITUE($A1;" ";"µ";5)
permet de remplacer cette fois le 5ème espace par µ (on obtient "GTRE / fftrt TUT 0.93µ22112010" )

Comme tout à l'heure la fonction CHERCHE() permet de trouver sa position (toujours avec +1 pour ne pas compter le caractère µ lui même):
Code:
CHERCHE("µ";SUBSTITUE($A1;" ";"µ";5))+1

Voilà SUM, j'espère que ces commentaires pourront t'aider à y voir plus clair.

Très bonne soirée,

mth
 

SUM

XLDnaute Occasionnel
Re : Extraction une partie des données d'une cellule

Bonsoir merci pour l'explication

ll y a encore la deuxième partie que je comprends un peu moins bien. Si dans mon exemple je rajoute trois caractère AAA dans la cellule A1 (AAA GTRE...), j'arrive en modifiant la formule à récupérer la chaîne GTRE mais par contre je n'arrive pas à modifier la deuxième partie de la formule pour ne récupérer que 0.93 ou 1.3528?

Merci encore pour votre aide
 

mth

XLDnaute Barbatruc
Re : Extraction une partie des données d'une cellule

Bonsoir SUM,

si on a par exemple ceci dans le fichier en A1 et A2:

AAA GTRE / fftrt TUT 0.93 22112010
AAA DSF / dsese LAL 1.3528 458548745
La formule serait :
Code:
=STXT($A1;CHERCHE("µ";SUBSTITUE($A1;" ";"µ";[B][COLOR=darkred]4[/COLOR][/B]))+1;NBCAR($A1)-CHERCHE("µ";SUBSTITUE($A1;" ";"µ";[B][COLOR=darkred]6[/COLOR][/B]))+1)

car le début de la chaîne à extraire est après le 4ème espace, la fin de la chaîne après le 6ème espace.

Bonne soirée,

mth
 

SUM

XLDnaute Occasionnel
Re : Extraction une partie des données d'une cellule

Bonsoir,

Et si je souhaite avoir uniquement en A2 "GTRE 0.93" ou en B2 "DSF 1.3528" sans reprendre ce qu'il y a le reste.
Quand je modifie les critères dans la 2ème partie de la formule, je n'arrive pas à exclure "fftrt TUT" ou "dsese LAL"

Merci

Bonne soirée
 

Tibo

XLDnaute Barbatruc
Re : Extraction une partie des données d'une cellule

Bonjour Sum, salut Mireille :),

Une solution parmi d'autres (le principe est de bien connaître les critères : entre tel et tel espace) :

Code:
=GAUCHE(A1;TROUVE(" ";A1))&STXT(A1;TROUVE("µ";SUBSTITUE(A1;" ";"µ";4))+1;TROUVE(
"µ";SUBSTITUE(A1;" ";"µ";5))-TROUVE("µ";SUBSTITUE(A1;" ";"µ";4)))
Je te laisse tester

@+
 

SUM

XLDnaute Occasionnel
Re : Extraction une partie des données d'une cellule

Bonsoir,

Merci pour votre réponse. La formule fonctionne parfaitement. Par contre, mon exemple n'était pas tout fait correct. En effet la formule renvoit AAA TUT
au lieu de GTRE 0.93. Mon exemple ne comprenait pas AAA.
J'essaie de modifier les paramétres mais je n'arrive pas obtenir le résultat GTRE 0.93.


AAA GTRE / fftrt TUT 0.93 22112010 en A1
Résultat en B1 GTRE 0.93

MErci

Bonne soirée
 

ballmaster

XLDnaute Occasionnel
Re : Extraction une partie des données d'une cellule

Bsoir,

en me basant sur la formule de tibo, ci-joint la formule rectifiée selon ta demande :

Code:
=STXT(A1;TROUVE("µ";SUBSTITUE(A1;" ";"µ";1))+1;TROUVE(
"µ";SUBSTITUE(A1;" ";"µ";2))-TROUVE("µ";SUBSTITUE(A1;" ";"µ";1)))&STXT(A1;TROUVE("µ";SUBSTITUE(A1;" ";"µ";5))+1;TROUVE(
"µ";SUBSTITUE(A1;" ";"µ";6))-TROUVE("µ";SUBSTITUE(A1;" ";"µ";5)))
 

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 330
Membres
103 188
dernier inscrit
evebar