Appel d'une fonction depuis autre module + calcul Intégrale

Bonjour !

Me voilà bien embêtée, je dois réaliser un calcul itératif suivant le modèle ci dessous :

capture d ecran 2018 06 02 a 10 48 24

Pour cela, j'ai besoin de :

  • savoir calculer une intégrale avec VBA
  • savoir appeler la fonction qui me calcule l'intégrale
  • Maitriser les boucles les itérations sur VBA

J'ai trouvé sur internet une fonction toute prête pour calculer les intégrales (module "Integrale"), mais je ne sais pas comment la faire fonctionner dans mon module "Calcul_Distance".

De plus, je suis totalement perdue au niveau itérations et je ne trouve rien sur internet qui ressmble à ce que je veux faire, je n'arrive pas à declarer mes variables pour qu'elles puissent évoluer d'une itération à l'autre ...

Merci pour votre aide !

Elsa

capture d ecran 2018 06 02 a 10 48 24
11transporte.xlsm (39.66 Ko)

Bonjour,

Je ne vais pas plonger dans ton calcul proprement dit, cela me prendrait trop de temps d'essayer de m'y remettre... !

Un module standard est public par défaut. Donc, tu appelles la fonction selon tes besoins, elle est visible de n'importe quel autre module. Maintenant tu peux la placer dans le même module...

Vérifie ta fonction, la dernière ligne qui apparaît en rouge n'est pas conforme, et je supprimerais tout ce qui concerne l'"affichage"...

Cordialement.

Bonjour Elsa_b4

Déjà, il te manque la fonction F() de Calcul numérique d'une expression mathématique littérale en x.

Que tu peux retrouver sur le même site, qu'il serait bien d'indiquer http://fordom.free.fr/

Function F(ByVal Equation As String, Optional ByVal X As Variant = 0) As Double
  'Evalue la fonction f(x) au point x
  'Mise en forme
  Equation = UCase(Equation)
  'évite la confusion de l'exponentielle EXP avec exp et X
  Equation = WorksheetFunction.Substitute(Equation, "EXP", "exp")
  'met la valeur X à la place de la lettre X
  Equation = WorksheetFunction.Substitute(Equation, "X", X)
  'converti virgule en point décimal
  Equation = WorksheetFunction.Substitute(Equation, ",", ".")
  'Interprète )( par )*(
  Equation = WorksheetFunction.Substitute(Equation, ")(", ")*(")
  'cacul l'expresion
  F = Evaluate(Equation)

End Function

A+

Merci BrunoM45 !

Je ne savais pas qu'il fallait indiquer les sources je le note de suite !

Re,

Je ne savais pas qu'il fallait indiquer les sources je le note de suite !

Ce n'est pas obligatoire, mais c'est mieux et plus sympa

Si quelqu'un d'autre tombe sur ce fil, cela lui évite d'avoir à rechercher

A+

Rechercher des sujets similaires à "appel fonction module calcul integrale"