Bonsoir à tous,
Je débute dans la programmation sous VBA et je cherche à faire un programme pour éviter une erreur de référence circulaire sous Excel.
Je voudrais réaliser un programme afin de déterminer trois nombres x, y et z tels que :
z=2,45*y
x=0,75*(x+y)
x+y+z=515
Sachant que x varie de 515 à 0, que y varie de 0 à 150 et que je cherche à avoir une précision de 0,01 sur x, y et z.
J'ai tenté de faire un programme mais celui-ci ne fonctionne pas. Excel plante à chaque nouvel essai donc je n'arrive pas à savoir où se situent les erreurs. Je poste la programme ci-dessous :
Sub Rex ()
Dim x As Double
Dim y As Double
Dim z As Double
Dim u As Double
z = 2.45 * y
u = x + y + z
For x = 515 To 0 Step -0.01
For y = 0 To 150 Step 0.01
x = 0.75 * (x + y)
If u = 515 Then
Exit Sub
End If
Next y
If u = 515 Then
Exit Sub
End If
Next x
If u = 515 Then
Exit Sub
End If
Cells(1, 1).Value = x
Cells(2, 1).Value = y
Cells(3, 1).Value = z
Cells(4, 1).Value = u
End Sub
Merci d'avance pour votre aide!
Matrach