extraire des données numériques d'une cellule

maryzi

XLDnaute Nouveau
Bonjour à tous,

J'ai besoin de votre aide: j'aimerai extraire des données d'une cellule. par exemple:
A1: PAD24 FAC 30ML CUIR
Mon but est d'avoir dans la colonne d'a coté "30" ou "30ML"
J'ai essayé de nombreuses combinaisons avec les fonctions stx, trouve et cherche mais je n'ai pas les bons résultats.

merci d avance pour votre aide!!!
 

Yaloo

XLDnaute Barbatruc
Re : extraire des données numériques d'une cellule

Bonjour maryzi,

Tes données sont-elles toujours XXXYY XXX YYXX XXXX (X pour les lettres et Y pour les chiffres) ?

Où alors est-ce qu'il s'agit toujours du même cycle : 5 caractères 1 vide 3 caractères 1 vide 4 caractères 1 vide 4 caractères 1 vide ?

Où alors est-ce qu'il n'y a pas de règles précises ? Dans ce cas là, c'est à la mimine qu'il faut le faire ;).

A te relire

Martial
 

maryzi

XLDnaute Nouveau
Re : extraire des données numériques d'une cellule

Bonjour Martial,

Non il n'y a pas de règle précise pour mes données, le seul truc qui ne diffère pas c'est que le "ML" est toujours à droite des données que je cherche à récupérér.
 

Yaloo

XLDnaute Barbatruc
Re : extraire des données numériques d'une cellule

Re,

Voici un fichier avec les 2 versions, soit juste le nombre soit le nombre + Ml

N'hésites pas à demander si besoin.

A te relire

Martial
 

Pièces jointes

  • Maryzi.xlsm
    16 KB · Affichages: 42

david84

XLDnaute Barbatruc
Re : extraire des données numériques d'une cellule

Bonsoir,
testé sur le seul exemple fourni :
Code:
Function MM(chaine As String) As String
Dim oRegExp As Object
Set oRegExp = CreateObject("vbscript.regexp")
oRegExp.Pattern = "(.*)( \d+ML)(.*)"
If oRegExp.test(chaine) Then MM = Trim(oRegExp.Replace(chaine, "$2")) Else MM = chaine
End Function
A+
 

tototiti2008

XLDnaute Barbatruc
Re : extraire des données numériques d'une cellule

Bonjour maryzi, Bonjour Yaloo, Bonjour David, :)

ou en formule

Code:
=STXT(SUBSTITUE(GAUCHE(A1;CHERCHE("ML";A1)-1);" ";"$";NBCAR(GAUCHE(A1;CHERCHE("ML";A1)-1))-NBCAR(SUBSTITUE(GAUCHE(A1;CHERCHE("ML";A1)-1);" ";"")));CHERCHE("$";SUBSTITUE(GAUCHE(A1;CHERCHE("ML";A1)-1);" ";"$";NBCAR(GAUCHE(A1;CHERCHE("ML";A1)-1))-NBCAR(SUBSTITUE(GAUCHE(A1;CHERCHE("ML";A1)-1);" ";""))))+1;1000)
 

Discussions similaires

Statistiques des forums

Discussions
312 187
Messages
2 086 024
Membres
103 097
dernier inscrit
Benduch