IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

recupere formule dans excel


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 855
    Par défaut recupere formule dans excel
    bonjour,

    Dans une cellule excel, j'ai la définition d'une fonction. ex: "5*x^2 + 3*x + 2"
    En VBA, je récupère la valeur de cette cellule dans une variable de type String.

    Comment faire pour remplacer "x" par une valeur et retourner le resultat du calcul dans une variable de type Single ?

    merci d'avance,

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    592
    Détails du profil
    Informations personnelles :
    Âge : 75
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 592
    Par défaut
    Bonsoir,

    Si j'ai bien compris dans une cellule tu as le texte décrivant la formule :"5*x^2 + 3*x + 2"
    Ensuite il faut interpréter la formule et faire le calcul, cela me semble compliqué surtout si tu souhaites que cela marche pour toutes les formules.

    Tu as aussi une solution en utilisant Excel, tu recopies la formule dans une cellule en ajoutant "=" devant et en remplaçant les "x" par l'adresse d'une cellule.
    Il te suffit de mettre la valeur souhaitée dans la cellule pour récupérer le résultat du calcul.

    Une autre solution si tu es costaud en Excel : par macro tu génère un autre fichier avec une macro qui calcule la fonction en question. Ensuite il faut appeler la dite macro pour avoir le résultat.

    Bon chance.

    PPz

  3. #3
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Dans un module public
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Public Function f(ByVal fct As String, ByVal Xo As Double) As Double
    f = Evaluate(Replace(fct, "x", Xo))
    End Function
    Exemple d'utilisation
    en B1: la fonction en x: 5*x^2 + 3*x + 2
    en B2: le point Xo: -1
    en B3: =f(B1; B2)

    Attention quand même, cette approximation ne fonctionnera pas pour les fonctions comportant un x (exemple exp: l'exponentiel), sinon partout on prendra comme paramètre la lettre µ par exemple.

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 855
    Par défaut
    Citation Envoyé par mercatog Voir le message
    Dans un module public
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Public Function f(ByVal fct As String, ByVal Xo As Double) As Double
    f = Evaluate(Replace(fct, "x", Xo))
    End Function
    merci, c'est parfait

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Masquer les formules dans Excel 2007
    Par ruru9 dans le forum Excel
    Réponses: 1
    Dernier message: 08/01/2008, 15h43
  2. formule dans excel NB.SI(plage;critère)
    Par <philhub dans le forum Excel
    Réponses: 13
    Dernier message: 18/10/2007, 09h51
  3. Insertion de formule dans Excel
    Par PIALOU dans le forum VBScript
    Réponses: 4
    Dernier message: 09/10/2007, 23h59
  4. formule dans Excel
    Par magictom42 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 25/10/2006, 14h00
  5. PRoblème de formule dans Excel
    Par jbidou88 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 11/05/2006, 09h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo