Extraction chiffres

bonjour,

dans une cellule, figure la ligne suivante:

85% t65 - 15% châtaigne

il s'agit de types de farines.

quelqu'un pourrait il m'aider à trouver une formule qui me permet d'extraire 85 et 15 dans 2 cellules différentes?, sachant que les quantités et types de farines changent et seuls les pourcentages doivent être extraits.

la forme de la ligne est toujours la même : xx% "farine 1" - xx% "farine 2

disons que l'on écrit la ligne "85% t65 - 15% châtaigne" en cellule d10 et que l'on veut que le pourcentage de la farine 1 s'affiche en d50 et farine 2 en d51

merci

Bonjour,

un essai

12classeur1.xlsx (13.30 Ko)

merci , c'est exactement ça

à+

Bonsoir Dann, bonsoir le forum,,

Par formule je ne sais pas faire mais le code VBA ci-dessous fait ce que tu demandes :

Sub Macro1()
Range("D50").Value = Split(Range("D10"), "%")(0)
Range("D51").Value = Split(Split(Range("D10").Value, " - ")(1), "%")(0)
End Sub

[Édition]

Afr DjiDji était déjà passé par là avec le solution impeccable ! Bonsoir à lui...

salut,

merci, j'enregistre aussi cette solution

à+

Je reviens car je tente de faire la m^me chose que DjiDji mais pour extraire les noms des farines dans des cellules séparées mais sans succes.

Bonjour,

Si il te faut tous les éléments tu sélectionnes les cellules concernées puis : 'Données / Convertir' avec 'Délimité' et cocher 'Espace'.

A l'étape 3 tu peux sélectionner la 3ème colone (le -) et choisir 'Non distribuée'

eric

Re, à tous

En attendant,

7classeur1.xlsx (13.38 Ko)

Bonsoir à tous les intervenants

Une solution dérivative personnalisée :

Function EXTRPCENTTXT(pcent As String)
    Dim txt, i%
    Application.Volatile
    txt = Split(pcent)
    For i = 0 To UBound(txt)
        If txt(i) Like "#*%" Then
            txt(i) = Val(txt(i))
        Else
            txt(i) = Chr(160)
        End If
    Next i
    txt = Split(Trim(Join(txt)), Chr(160))
    txt = Trim(Replace(Join(txt, Chr(160)), Chr(160) & " ", ""))
    EXTRPCENTTXT = Split(txt)
End Function

Fonction matricielle : Sélectionner 2 cellules (côte à côte sur la même ligne), taper la formule =EXTRPCENTTXT(A1), A1 étant la cellule où se trouve la chaîne dont il faut extraire la valeur des %, puis valider par Ctrl+Maj+Entrée,

et les 2 pourcentages apparaissent.

La fonction peut extraire autant de pourcentages qu'il s'en trouve dans la chaîne, il suffit de sélectionner le nombre de cellules correspondant au départ.

Cordialement.

9extrpcenttxt.xlsm (15.28 Ko)

merci pour les solutions .

Rechercher des sujets similaires à "extraction chiffres"