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 :

resoudre equation en VBA sans passer par excel


Sujet :

Macros et VBA Excel

Vue hybride

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

    Informations forums :
    Inscription : Mai 2009
    Messages : 9
    Par défaut resoudre equation en VBA sans passer par excel
    Bonjour,

    j'ai un petit souci qui me fait m'arracher les cheveux: je souhaite resoudre une equation en modifiant un parametre dans une de mes macros.
    Concretement j'ai:
    DAv(i) = Abs(Av(i) - Av2(i))

    avec Av(i)=cste et
    AV2(i)= D(i) ^ 2 / 4 * Arcos(i) - (D(i) / 2 - hv(i)) * (hv(i) * (D(i) - hv(i))) ^ (1 / 2)

    Je cherche à avoir DAv(i)=0 en agissant sur hv(i) (les autres parametres etant constants).

    J'ai essayé en utilisant goalseek mais je n'y arrive pas et je me demandais si ce n'etait pas possible de le faire directement sous vba.

    Si qulelqu'un a une reponse ou un debut de solution, je suis preneuse!

    merci!

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Bonjour,
    Tu travaille sur des tableaux ? Dav(Index) ?
    Sinon, par VBA c'est faisable pour autant que les valeurs mises en jeu soient dans les limites d'un double.
    Peut-tu mettre un classeur exemple ?
    A+

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 9
    Par défaut
    oui je travaille sur un tableau: le "i" indique la colonne calculée.
    Pour chaque colonne je lis les valeurs d'entrées et je calcule ensuite Av(i) et Av2(i)

    Je pense que mes calculs sont dans la limite d'un double:
    Dav(i): difference entre deux calculs d'aire (AV(i) et AV2(i))
    hv(i): hauteur

  4. #4
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Peut-tu mettre un classeur exemple ?
    Ce serai plus simple et travaillerai directement sur le classeur.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 9
    Par défaut
    euh...tu entends quoi par classeur exemple?? (desolée je commence le vba donc je comprends pas tous les termes...) dis moi si il te faut la macro et le la feuille excel ou juste un...

    merci

  6. #6
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Si ton classeur n'est pas confidentiel et pas trop volumineux tu met ce classeur en pièce jointe.
    Sinon tu fais un nouveau classeur avec au moins de quoi calculer une ou deux formules.
    Faudrai aussi que tu mette de parenthèses dans ta formule parce que moi je ne sais pas exactement le comment de ta formule et il faut bien le spécifié à excel ! du genre..
    AV2(i)= ((D(i) ^ 2 / 4 )* Arcos(i)) - (D(i) / 2 - hv(i)) * (hv(i) * (D(i) - hv(i))) ^ (1 / 2)

    En tenant compte que les opérations sont dans l'ordre du calcul
    Multiplication et division ensuite + et - (les ^je ne me rappel plus l'ordre)
    et aussi exposant 1/2 et 2/4 ? C'est l'équivalent de 0,5 non ?
    ou alors c'est .. ex ((D(i) ^2) / 4 ), tu vois, c'est pas la même chose.

  7. #7
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Par défaut
    Citation Envoyé par clemouille Voir le message
    Bonjour,

    j'ai un petit souci qui me fait m'arracher les cheveux: je souhaite resoudre une equation en modifiant un parametre dans une de mes macros.
    Concretement j'ai:
    DAv(i) = Abs(Av(i) - Av2(i))

    avec Av(i)=cste et
    AV2(i)= D(i) ^ 2 / 4 * Arcos(i) - (D(i) / 2 - hv(i)) * (hv(i) * (D(i) - hv(i))) ^ (1 / 2)

    Je cherche à avoir DAv(i)=0 en agissant sur hv(i) (les autres parametres etant constants).
    Bonjour,

    euh ...

    cela équivaut à chercher pour quelle valeur de i Av(i) = Av2(i)
    Je ne comprends toutefois pas :
    - à quoi peut bien correspondre :
    avec Av(i)=cste
    - comment est calculé, de son côté, av(i)
    - comment on pourrait, avec le même i, arriver à tes fins (ou alors : expose clairement et complètement ton mécanisme)

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 9
    Par défaut
    Citation Envoyé par ucfoutu Voir le message
    Bonjour,

    euh ...

    cela équivaut à chercher pour quelle valeur de i Av(i) = Av2(i)
    Je ne comprends toutefois pas :
    - à quoi peut bien correspondre :

    - comment est calculé, de son côté, av(i)
    - comment on pourrait, avec le même i, arriver à tes fins (ou alors : expose clairement et complètement ton mécanisme)
    je crains que je me sois mal exprimée: le "i" ne correspond pas a une variable, c'est juste un indicateur de colonne...
    av(i) est le rapport de données d'entrée Av(i)=Q(i)/v(i)

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

Discussions similaires

  1. [AC-2007] Envoyer un mail Outlook par vba sans passer par le ClickYes
    Par lakhdar16 dans le forum VBA Access
    Réponses: 1
    Dernier message: 08/05/2012, 17h17
  2. [XL-2007] Ouvrir VBA sans passer par les menus
    Par Jcorbeaux dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 16/01/2012, 22h26
  3. Utilisation de feuilles variables en VBA sans passer par indirect
    Par Titeuf4243 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 17/11/2011, 20h43
  4. [VBA-A] Envoi de mail sans passer par Outlook ou autre.
    Par genius99 dans le forum VBA Access
    Réponses: 4
    Dernier message: 21/02/2006, 07h50
  5. VBA : ouverture d'un Userform sans passer par excel
    Par jemigo dans le forum Macros et VBA Excel
    Réponses: 28
    Dernier message: 23/11/2005, 16h28

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