Récuperation d'un texte pour le convertir en fonction en VBA

Bonjour

Je recherche une solution en VBA afin de pouvoir récupérer des formules qui sont définies en format texte dans une feuille afin de les recopier dans differente cellules d’un autre onglet mais sous forme de fonction Exemple ‘=SOMME.SI.ENS(Col_Rang_MAJ;Col_Type_MAJ;"N19"). Lorsque j’effectue la procédure ci-dessous elle m’indique bien que la cellule n’est pas une formule le HsFormula est a faux pour la cellule texte. Même si je change le format de la cellule qui contient le texte cela ne change rien Avez-vous une idée à ce sujet ?

Merci

Sub FormuleOuPas()

If ActiveCell.HasFormula Then

Rep = MsgBox("La cellule " & ActiveCell.Address & _

" contient une formule.", , _

"Formule ou pas ?")

Else: Rep = MsgBox("La cellule " & ActiveCell.Address & _

" ne contient pas de formule.", , "Formule ou pas ?")

End If

End Sub

Bonjour et bienvenue sur le forum

Un essai à tester. Te convient-il ?

4classeur1-v1.xlsm (20.86 Ko)

Bye !

Bonjour gmb

merci pour la réponse mais ce n'est pas ce que je cherche. ce que je cherche a faire c'est de convertir une chaine de caractère en formule à mettre dans une cellule

Exemple dans un feuil1 j'ai la ligne suivante sous forme de texte =SOMME.SI.ENS(Col_Rang_MAJ;Col_Type_MAJ;"N19") je voudrais mettre dans une cellule d'une feuil2 cette ligne mais sous forme de fonction. j'ai modifié le classeurV1 pour plus d'explications. Je n'ai toujours pas trouvé de solution pour résoudre ce problème. Je sais que cela est possible mais je ne sais pas comment

encore merci

bye

4classeur1-v1.xlsm (18.46 Ko)

Bonjour,

Peut-être en essayant comme ça ?

Sheets("feuil2").range("A1").formulalocal = sheets("feuil1").range("A1").value

Les références A1 sont à adapter...

Il va y avoir un problème cependant si N19 reste entre guillemets et qu'il s'agit d'une référence.

Cdlt,

Bonjour

Je viens de trouver une partie de la solution mais il me reste un élément à trouver Comment avoir le résultat final dans une variable à la place du range Si vous avez une idée je suis preneur.

Voir le classeur1-v1

Aa plus

2classeur1-v1.xlsm (21.24 Ko)

Peut-être ça : ?

Sub Conversion_Texte_Formule()

    valeurtexte = Range("B19").Value
    Range("B21").FormulaLocal = valeurtexte

Exit Sub
Rechercher des sujets similaires à "recuperation texte convertir fonction vba"