Addition à trou sur VBA

Bonjour à tous, je dois résoudre une addition à trou sur VBA

100% = ∑ 4% /(1+x) ^ i

avec n allant de 1 jusqu'à 10

Il faut donc trouver la valeur de X

J'ai fait un code qui semble marcher, mais mon prof me dit que ce n'est pas la bonne façon de le faire et que je me prends la tête pour rien. Il y aurait donc une autre façon de résoudre ce calcul. J'avoue que je ne trouve pas. Apparemment, il faudrait utiliser une fonction TRI. Mais je ne vois pas pourquoi.

Y aurait-il quelqu'un pour m'aider car je désespère ? Merci d'avance

Voici mon code actuel

Function F(x As Double) As Double
Dim dSum As Double
For i = 1 To 10
dSum = dSum + 0.4 / (1 + x) ^ i
Next i

F = dSum

End Function

Sub Solve()

Dim objectif As Double
Dim val As Double
Dim iter_max As Long
Dim iter As Long
Dim step As Double
Dim x As Double
Dim precision As Double
objectif = 1
step = 1
x = 10

val = F(x)
iter_max = 100
decimals = 15

precision = 10 ^ (-decimals)

Do While Abs(val - objectif) > precision
Do While val < objectif
x = x - step
val = F(x)

Debug.Print val & " (x=" & x & ")"
If val >= objectif Then
Debug.Print "x in [" & x & "; " & x + step & "]"
Exit Do
End If
If val = objectif Then GoTo end_sub

Loop

x = x + step
val = F(x)
step = step / 10
iter = iter + 1

'If iter = iter_max Then Exit Do

Loop
end_sub:
Debug.Print "Solution : " & val & "(x=" & x & ")"

Cells(2, 1).Value = x

End Sub

Edit modo : code à mettre entre balises SVP avec le bouton </>

Bonsoir Mozess48 et

Une petite présentation ICI serait la bienvenue

Si vous ne l'avez pas encore fait, je vous invite à lire la charte du forum [A LIRE AVANT DE POSTER] ainsi que ses fonctionnalités
qui vous aideront dans vos demandes et réponses sur ce forum et notamment :

  • Pour plus de lisibilité, utilisez la fonctionnalité </> pour insérer vos codes VBA (et si possible aussi pour vos formules Excel)
image

Merci d'y faire attention et merci de votre participation

Pour le reste, je laisse faire les pros des calculs mathématiques

Cordialement

Bonjour à tous,

Tout change mais j'aurais tendance à dire que 4% c'est toujours 0.04
Pour le reste je passe mon tour aussi.
eric

Bonjour Mozess48, BrunoM45, Eriiic,

Apparemment, il faudrait utiliser une fonction TRI. Mais je ne vois pas pourquoi.

Sans doute, tu ne vas pas prendre l'option Finance plus tard...

Sinon ton futur employeur va souffrir

 je dois résoudre une addition à trou sur VBA

100% = ∑ 4% /(1+x) ^ i

L'addition à trous me fait plus penser à des cours de CM1 à CM2.

Mais là, c'est la formule du Taux de Rendement Interne (TRI) et ton prof a raison.

Même si, on peut convenir, que x représente les trous (du porte-monnaie ) à rechercher.

Donc 100% est l'investissement, donc n'importe quelle somme dont on cherche (ici sur 10 ans) au minimum à recouvrer par des flux de trésorerie.

A toi, en suivant le lien de contenter ton prof: ici

Rechercher des sujets similaires à "addition trou vba"