Bonsoir,
je viens d'avoir l'idée suivante :
J'ai creer dans un module la fonction suivante :
Function f(x)
f = 3 * x * x + 5 * x - 3
End Function
je peux ainsi utiliser dans ma feuille cette fonction comme en math :
en A1 : l'abscisse, en B1 : l'ordonnée = f(A1)
Cela me convient mais j'aimerai mieux.
En effet lorsque j'ai besoin de changer la fonction, je suis obligé d'aller
le faire dans le module.
Y-a-t-il une possibilité pour rentrer la fonction (en B2 par exemple) et
d'indiquer à la fonction du module d'utiliser la cellule B2 ? Du style (mais
ça, ça marche pas)
B2 : 3 * x * x + 5 * x - 3
et dans le module
Function f(x)
f = cells(2,2).value
End Function
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
FxM
Bonsoir, Bonsoir,
Dans ta formule, Excel doit remplacer x par sa valeur --> Application.Substitute(Cells(2, 2), "x", x)
Ensuite, il va évaluer le résultat. Pour cela, il faut le faire précéder du signe Ce qui donne : Public Function f(x) f = Evaluate("=" & Application.Substitute(Cells(2, 2), "x", x)) End Function
@+ FxM
Bonsoir, je viens d'avoir l'idée suivante : J'ai creer dans un module la fonction suivante :
Function f(x) f = 3 * x * x + 5 * x - 3 End Function
je peux ainsi utiliser dans ma feuille cette fonction comme en math : en A1 : l'abscisse, en B1 : l'ordonnée = f(A1)
Cela me convient mais j'aimerai mieux. En effet lorsque j'ai besoin de changer la fonction, je suis obligé d'aller le faire dans le module. Y-a-t-il une possibilité pour rentrer la fonction (en B2 par exemple) et d'indiquer à la fonction du module d'utiliser la cellule B2 ? Du style (mais ça, ça marche pas) B2 : 3 * x * x + 5 * x - 3 et dans le module Function f(x) f = cells(2,2).value End Function
Merci
Bonsoir,
Bonsoir,
Dans ta formule, Excel doit remplacer x par sa valeur
--> Application.Substitute(Cells(2, 2), "x", x)
Ensuite, il va évaluer le résultat. Pour cela, il faut le faire précéder
du signe
Ce qui donne :
Public Function f(x)
f = Evaluate("=" & Application.Substitute(Cells(2, 2), "x", x))
End Function
@+
FxM
Bonsoir,
je viens d'avoir l'idée suivante :
J'ai creer dans un module la fonction suivante :
Function f(x)
f = 3 * x * x + 5 * x - 3
End Function
je peux ainsi utiliser dans ma feuille cette fonction comme en math :
en A1 : l'abscisse, en B1 : l'ordonnée = f(A1)
Cela me convient mais j'aimerai mieux.
En effet lorsque j'ai besoin de changer la fonction, je suis obligé d'aller
le faire dans le module.
Y-a-t-il une possibilité pour rentrer la fonction (en B2 par exemple) et
d'indiquer à la fonction du module d'utiliser la cellule B2 ? Du style (mais
ça, ça marche pas)
B2 : 3 * x * x + 5 * x - 3
et dans le module
Function f(x)
f = cells(2,2).value
End Function
Dans ta formule, Excel doit remplacer x par sa valeur --> Application.Substitute(Cells(2, 2), "x", x)
Ensuite, il va évaluer le résultat. Pour cela, il faut le faire précéder du signe Ce qui donne : Public Function f(x) f = Evaluate("=" & Application.Substitute(Cells(2, 2), "x", x)) End Function
@+ FxM
Bonsoir, je viens d'avoir l'idée suivante : J'ai creer dans un module la fonction suivante :
Function f(x) f = 3 * x * x + 5 * x - 3 End Function
je peux ainsi utiliser dans ma feuille cette fonction comme en math : en A1 : l'abscisse, en B1 : l'ordonnée = f(A1)
Cela me convient mais j'aimerai mieux. En effet lorsque j'ai besoin de changer la fonction, je suis obligé d'aller le faire dans le module. Y-a-t-il une possibilité pour rentrer la fonction (en B2 par exemple) et d'indiquer à la fonction du module d'utiliser la cellule B2 ? Du style (mais ça, ça marche pas) B2 : 3 * x * x + 5 * x - 3 et dans le module Function f(x) f = cells(2,2).value End Function
Merci
Olivier1970
Merci, c'est exactement ça.
"FxM" a écrit dans le message de news: %
Bonsoir, Bonsoir,
Dans ta formule, Excel doit remplacer x par sa valeur --> Application.Substitute(Cells(2, 2), "x", x)
Ensuite, il va évaluer le résultat. Pour cela, il faut le faire précéder du signe > Ce qui donne : Public Function f(x) f = Evaluate("=" & Application.Substitute(Cells(2, 2), "x", x)) End Function
@+ FxM
Bonsoir, je viens d'avoir l'idée suivante : J'ai creer dans un module la fonction suivante :
Function f(x) f = 3 * x * x + 5 * x - 3 End Function
je peux ainsi utiliser dans ma feuille cette fonction comme en math : en A1 : l'abscisse, en B1 : l'ordonnée = f(A1)
Cela me convient mais j'aimerai mieux. En effet lorsque j'ai besoin de changer la fonction, je suis obligé d'aller le faire dans le module. Y-a-t-il une possibilité pour rentrer la fonction (en B2 par exemple) et d'indiquer à la fonction du module d'utiliser la cellule B2 ? Du style (mais ça, ça marche pas) B2 : 3 * x * x + 5 * x - 3 et dans le module Function f(x) f = cells(2,2).value End Function
Merci
Merci, c'est exactement ça.
"FxM" <nullos@greuchmeu.ici> a écrit dans le message de news:
%23aQb0LYGHHA.2456@TK2MSFTNGP06.phx.gbl...
Bonsoir,
Bonsoir,
Dans ta formule, Excel doit remplacer x par sa valeur
--> Application.Substitute(Cells(2, 2), "x", x)
Ensuite, il va évaluer le résultat. Pour cela, il faut le faire précéder
du signe >
Ce qui donne :
Public Function f(x)
f = Evaluate("=" & Application.Substitute(Cells(2, 2), "x", x))
End Function
@+
FxM
Bonsoir,
je viens d'avoir l'idée suivante :
J'ai creer dans un module la fonction suivante :
Function f(x)
f = 3 * x * x + 5 * x - 3
End Function
je peux ainsi utiliser dans ma feuille cette fonction comme en math :
en A1 : l'abscisse, en B1 : l'ordonnée = f(A1)
Cela me convient mais j'aimerai mieux.
En effet lorsque j'ai besoin de changer la fonction, je suis obligé
d'aller le faire dans le module.
Y-a-t-il une possibilité pour rentrer la fonction (en B2 par exemple) et
d'indiquer à la fonction du module d'utiliser la cellule B2 ? Du style
(mais ça, ça marche pas)
B2 : 3 * x * x + 5 * x - 3
et dans le module
Function f(x)
f = cells(2,2).value
End Function
Dans ta formule, Excel doit remplacer x par sa valeur --> Application.Substitute(Cells(2, 2), "x", x)
Ensuite, il va évaluer le résultat. Pour cela, il faut le faire précéder du signe > Ce qui donne : Public Function f(x) f = Evaluate("=" & Application.Substitute(Cells(2, 2), "x", x)) End Function
@+ FxM
Bonsoir, je viens d'avoir l'idée suivante : J'ai creer dans un module la fonction suivante :
Function f(x) f = 3 * x * x + 5 * x - 3 End Function
je peux ainsi utiliser dans ma feuille cette fonction comme en math : en A1 : l'abscisse, en B1 : l'ordonnée = f(A1)
Cela me convient mais j'aimerai mieux. En effet lorsque j'ai besoin de changer la fonction, je suis obligé d'aller le faire dans le module. Y-a-t-il une possibilité pour rentrer la fonction (en B2 par exemple) et d'indiquer à la fonction du module d'utiliser la cellule B2 ? Du style (mais ça, ça marche pas) B2 : 3 * x * x + 5 * x - 3 et dans le module Function f(x) f = cells(2,2).value End Function
Merci
AV
......... Pour cela, il faut le faire précéder du signe Jps dirait que c'est superfétatoire ;-)
AV
......... Pour cela, il faut le faire précéder du signe
Jps dirait que c'est superfétatoire ;-)
......... Pour cela, il faut le faire précéder du signe Jps dirait que c'est superfétatoire ;-)
AV
garnote
Salut Olivier,
Formate "texte" la cellule contenant ton expression en x. Ainsi, tu pourras entrer une fonction commençant par "-" sans avoir une "mauvaise surprise".
Public Function f(x) Application.Volatile fc = Application.Substitute(Cells(2, 2), "-", "+0-") f = Evaluate(Application.Substitute(fc, "x", x)) End Function
Serge
"Olivier1970" a écrit dans le message de news: 457739ea$0$21150$
Bonsoir, je viens d'avoir l'idée suivante : J'ai creer dans un module la fonction suivante :
Function f(x) f = 3 * x * x + 5 * x - 3 End Function
je peux ainsi utiliser dans ma feuille cette fonction comme en math : en A1 : l'abscisse, en B1 : l'ordonnée = f(A1)
Cela me convient mais j'aimerai mieux. En effet lorsque j'ai besoin de changer la fonction, je suis obligé d'aller le faire dans le module. Y-a-t-il une possibilité pour rentrer la fonction (en B2 par exemple) et d'indiquer à la fonction du module d'utiliser la cellule B2 ? Du style (mais ça, ça marche pas) B2 : 3 * x * x + 5 * x - 3 et dans le module Function f(x) f = cells(2,2).value End Function
Merci
Salut Olivier,
Formate "texte" la cellule contenant ton expression en x.
Ainsi, tu pourras entrer une fonction commençant par "-"
sans avoir une "mauvaise surprise".
Public Function f(x)
Application.Volatile
fc = Application.Substitute(Cells(2, 2), "-", "+0-")
f = Evaluate(Application.Substitute(fc, "x", x))
End Function
Serge
"Olivier1970" <olivier1970@club-internet.fr> a écrit dans le message de news: 457739ea$0$21150$7a628cd7@news.club-internet.fr...
Bonsoir,
je viens d'avoir l'idée suivante :
J'ai creer dans un module la fonction suivante :
Function f(x)
f = 3 * x * x + 5 * x - 3
End Function
je peux ainsi utiliser dans ma feuille cette fonction comme en math :
en A1 : l'abscisse, en B1 : l'ordonnée = f(A1)
Cela me convient mais j'aimerai mieux.
En effet lorsque j'ai besoin de changer la fonction, je suis obligé d'aller le faire dans le module.
Y-a-t-il une possibilité pour rentrer la fonction (en B2 par exemple) et d'indiquer à la fonction du module d'utiliser la cellule
B2 ? Du style (mais ça, ça marche pas)
B2 : 3 * x * x + 5 * x - 3
et dans le module
Function f(x)
f = cells(2,2).value
End Function
Formate "texte" la cellule contenant ton expression en x. Ainsi, tu pourras entrer une fonction commençant par "-" sans avoir une "mauvaise surprise".
Public Function f(x) Application.Volatile fc = Application.Substitute(Cells(2, 2), "-", "+0-") f = Evaluate(Application.Substitute(fc, "x", x)) End Function
Serge
"Olivier1970" a écrit dans le message de news: 457739ea$0$21150$
Bonsoir, je viens d'avoir l'idée suivante : J'ai creer dans un module la fonction suivante :
Function f(x) f = 3 * x * x + 5 * x - 3 End Function
je peux ainsi utiliser dans ma feuille cette fonction comme en math : en A1 : l'abscisse, en B1 : l'ordonnée = f(A1)
Cela me convient mais j'aimerai mieux. En effet lorsque j'ai besoin de changer la fonction, je suis obligé d'aller le faire dans le module. Y-a-t-il une possibilité pour rentrer la fonction (en B2 par exemple) et d'indiquer à la fonction du module d'utiliser la cellule B2 ? Du style (mais ça, ça marche pas) B2 : 3 * x * x + 5 * x - 3 et dans le module Function f(x) f = cells(2,2).value End Function