Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Calculs à partir de formules paramétrées par l'utilisateur

3 réponses
Avatar
COSNALAU
Dans du code, je souhaite pouvoir effectuer des calculs =E0=20
partir de formules cr=E9=E9s par l'utilisateur avec une liste=20
de variables pr=E9d=E9finies, un peu comme dans EXCEL, mais=20
avec ACCESS.

Exemple de formule saisie :=20
((AB+VF)/GR)+((TY+MP)/GR)

Les variables sont pr=E9inititalis=E9es dans le module mais=20
comment transformer la formule en format texte pour la=20
transformer en formule directement interpr=E9table par VB ?

Merci d'avance pour r=E9ponse.

3 réponses

Avatar
Raymond [mvp]
Bonjour.

Voir la fonction Eval qui devrait convenir.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour une meilleure
efficacité de tes interventions sur MPFA


"COSNALAU" a écrit dans le message de
news:092b01c3aaa8$1ec6f990$
Dans du code, je souhaite pouvoir effectuer des calculs à
partir de formules créés par l'utilisateur avec une liste
de variables prédéfinies, un peu comme dans EXCEL, mais
avec ACCESS.

Exemple de formule saisie :
((AB+VF)/GR)+((TY+MP)/GR)

Les variables sont préinititalisées dans le module mais
comment transformer la formule en format texte pour la
transformer en formule directement interprétable par VB ?

Merci d'avance pour réponse.
Avatar
Apparemment, ça ne suffit pas car si j'exécute cette
fonction,

Public Function CalcForm() As Double
Dim ttt, bbb, vvv As Double
ttt = 15
bbb = 20
vvv = 30
CalcForm = Eval("ttt+bbb/vvv")
End Function

j'obtiens un message m'indiquant que Access ne trouve pas
le nom ttt alors que la variable est déclarée et
inititliasée dans le module.

-----Message d'origine-----
Bonjour.

Voir la fonction Eval qui devrait convenir.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour une meilleure
efficacité de tes interventions sur MPFA


"COSNALAU" a écrit
dans le message de

news:092b01c3aaa8$1ec6f990$
Dans du code, je souhaite pouvoir effectuer des calculs à
partir de formules créés par l'utilisateur avec une liste
de variables prédéfinies, un peu comme dans EXCEL, mais
avec ACCESS.

Exemple de formule saisie :
((AB+VF)/GR)+((TY+MP)/GR)

Les variables sont préinititalisées dans le module mais
comment transformer la formule en format texte pour la
transformer en formule directement interprétable par VB ?

Merci d'avance pour réponse.


.



Avatar
Charles ERNST
essayez ceci :

Private Sub Commande0_Click()
Dim ttt, bbb, ccc, vvv As Double
ttt = 15
bbb = 20
vvv = 30
ccc = Replace("ttt+bbb/vvv", "ttt", ttt)
ccc = Replace(ccc, "bbb", bbb)
ccc = Replace(ccc, "vvv", vvv)
Debug.Print Eval(ccc)

End Sub


a écrit dans le message de
news:0b8c01c3aab2$b3bd63e0$
Apparemment, ça ne suffit pas car si j'exécute cette
fonction,

Public Function CalcForm() As Double
Dim ttt, bbb, vvv As Double
ttt = 15
bbb = 20
vvv = 30
CalcForm = Eval("ttt+bbb/vvv")
End Function

j'obtiens un message m'indiquant que Access ne trouve pas
le nom ttt alors que la variable est déclarée et
inititliasée dans le module.

-----Message d'origine-----
Bonjour.

Voir la fonction Eval qui devrait convenir.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour une meilleure
efficacité de tes interventions sur MPFA


"COSNALAU" a écrit
dans le message de

news:092b01c3aaa8$1ec6f990$
Dans du code, je souhaite pouvoir effectuer des calculs à
partir de formules créés par l'utilisateur avec une liste
de variables prédéfinies, un peu comme dans EXCEL, mais
avec ACCESS.

Exemple de formule saisie :
((AB+VF)/GR)+((TY+MP)/GR)

Les variables sont préinititalisées dans le module mais
comment transformer la formule en format texte pour la
transformer en formule directement interprétable par VB ?

Merci d'avance pour réponse.


.