extraire une formule

Xxaann

XLDnaute Occasionnel
Bonjour,

Dans une cellule j'ai '=(32+15)*37
En fait, c'est un fichier de commandes, 32 et 15 correspondent à deux cdes différentes pour un même client.
Je souhaiterai extraire c'est deux données, pour ensuite faire deux lignes distinctes.

Merci
 

Xxaann

XLDnaute Occasionnel
Re : extraire une formule

Merci JBOBO,

Ca marche bien ta formule par contre j'ai fais une erreur dans ma question...
C'est bien une formule il n'y a pas de ' dans la cellule.
Donc ta formule ne fonctionne pas...

Une autre solution pour m'aider.

Merci
fichier en pj
 

Pièces jointes

  • extraire formule.xlsx
    9 KB · Affichages: 30

piga25

XLDnaute Barbatruc
Re : extraire une formule

Bonjour,

Avec des formules personnalisées :
Pour récupérer la première partie de l'addition
Code:
Function AjoutéÀ(ByVal R As Range) As String
On Error Resume Next
AjoutéÀ = Split(Split(R.Formula, "+")(0), "=(")(1)
If Err Then AjoutéÀ = ""
End Function
et pour récupérer la seconde partie de l'addition et a mettre dans la formule :
=SUBSTITUE(AjoutéB(D3);GAUCHE(AjoutéB(D3);3);"";1)

Function AjoutéB(ByVal R As Range) As String
On Error Resume Next
AjoutéB = Split(Split(R.Formula, ")*")(0), "=(")(1)
If Err Then AjoutéB = ""
End Function
 

Pièces jointes

  • extraire formule.xlsm
    15.3 KB · Affichages: 30

Xxaann

XLDnaute Occasionnel
Re : extraire une formule

Jiai modifié la macro de ajoutéB comme ceci:

Function AjoutéB(ByVal R As Range) As String
On Error Resume Next
AjoutéB = Split(Split(R.Formula, ")*")(0), "+")(1)
If Err Then AjoutéB = ""
End Function

Maintenant ca fonctionne très bien.

Grand merci, mais j'essai avec =trouve(AjoutéB;"+")
 

JBOBO

XLDnaute Accro
Re : extraire une formule

re,

Dans ce cas, tu peux faire un copier/coller de ta colonne dans une colonne adjacente et ensuite tu selectionnes tes donnees, tu fais Remplacer et tu remplaces le = par '= et tu fais remplacer tout. tu auras alors la formule sous format texte et tu appliques ensuite les 2 formules de mon post précedent.
 

piga25

XLDnaute Barbatruc
Re : extraire une formule

Bonjour,

Juste avec une seule fonction personnalisée qui traite l'ensemble des cas :
Function Isoler(ByVal Cellule As Range, Caractère_avant, Caractère_après As String)
On Error Resume Next
Isoler = Split(Split(Cellule.Formula, Caractère_après)(0), Caractère_avant)(1)
If Err Then Isoler = ""
End Function
 

Discussions similaires

Réponses
16
Affichages
535
Réponses
4
Affichages
352

Statistiques des forums

Discussions
312 688
Messages
2 090 961
Membres
104 710
dernier inscrit
TomCallhagan