XL 2019 VBA itérations

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Nicolas17

XLDnaute Nouveau
Bonjour,

Encore une fois, j'aurai besoin d'aide pour un calcul (ci-joint). 🙂

Quand je lance le code, cela mouline indéfiniment. 🙁

Vs = 5, g=9.81, h = 4.5, Ac = 202.5, alphas = 1.26, Bb = 36 et alpha = 26, Am = 34.2.

Merci d'avance !

Nicolas
 

Pièces jointes

  • equation.JPG
    equation.JPG
    37 KB · Affichages: 32
  • VBA delta h.txt
    VBA delta h.txt
    1.1 KB · Affichages: 7
Solution
dans Variation je pense qu'il y a une erreur de parenthèse.
Mais même rectifié, pour les inputs du post #1, je trouve un Deltah de -0.4m.
Cependant (si j'ai bien compris) DeltaH est le niveau par rapport à l'origine. Donc s'agissant d'un abaissement il serait normal que DeltaH soit négatif. Non ?
Bonjour Nicolas,
Pas encore compris pourquoi, mais peut être que cela vous aidera à avancer.
Nous serons deux.
While Abs(Y - w) > 0.01 est impossible car Abs(Y - w) =57.6687486 et ne bouge pas.
Rajouter deux lignes de code pour suivre la convergence dans la feuille :
VB:
    While Abs(Y - w) > 0.01
        Range("A1").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
        [A1] = Abs(Y - w)            ' rajoute la convergence en colonne A pour essayer de comprendre'
        w = barrage(Bb, h, Am)
        Y = variation(Ac, AlphaS, Vs) ', Bb, h, Am)
    Wend
 
Je ne comprend pas pourquoi vous faites un test de convergence car :
1- w = barrage(Bb, h, Am) est constant =57.5919
2-Y = variation(Ac, AlphaS, Vs) est constant =-0.07676

D'autre part vous donnez Alpha=26, hors un angle s'exprime en radians donc compris entre +/-2Pi.
J'ai modifié le code pour tracer aussi W et Y :
VB:
    While Abs(Y - w) > 0.01
        Range("A1:C1").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
        [A1] = Abs(Y - w)
        w = barrage(Bb, h, Am)  ' Cte
        [B1] = w
        Y = variation(Ac, AlphaS, Vs) ', Bb, h, Am)
        [C1] = Y
    Wend
 
Aucune idée.
Cependant, je réitère, le VBA (et XL) ne travaille qu'avec des angles en radians.
Alpha étant un angle il m'étonnerait que 26 soit exprimé en radians.
Généralement on exprime un angle en radian entre +/-2 pi.
26 radians feraient 1489°.
Peut être une piste.
 
dans Variation je pense qu'il y a une erreur de parenthèse.
Mais même rectifié, pour les inputs du post #1, je trouve un Deltah de -0.4m.
Cependant (si j'ai bien compris) DeltaH est le niveau par rapport à l'origine. Donc s'agissant d'un abaissement il serait normal que DeltaH soit négatif. Non ?
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
6
Affichages
3 K
Retour