Bonjour à tous,
J'ai un problème sur une petite macro que j'ai écrite. Il s'agit d'un algorithme de recherche d'une valeur par dichotomie (j'ai 2 valeurs, que je resserre pour finir par obtenir la bonne valeur). L'algorithme est bon (a priori), mais je n'arrive pas à rentrer toutes les valeurs numériques qui sont entrées dans ma feuille Excel. Voici le code :
En exécutant cette macro, j'obtiens une erreur 1004 : Erreur définie par l'application ou par l'objet. Je pense que ça vient de ma manière d'aller chercher les valeurs dans ma feuille Excel. A chaque fois, je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 Public Sub CalculMasse() ' {Déclaration de toutes mes variables (Integers & Singles)} m1 = 0 m2 = 1000 Worksheets("Cas 11 noeuds - 5").Activate Range("B38").Select Evoy = ActiveCell.Value ' {Et d'autres entrées faites de la même manière} Worksheets("Données").Activate Range("Données!B68").Select Eps1 = t1 * ActiveCell.Value ' {Et d'autres entrées de la feuille Données} Worksheets("Cas 11 noeuds - 5").Activate ' {Et encore d'autres entrées} Do While m2 - m1 > 0.001 ' {Algorithme de dichotomie} Loop MsgBox m1 End Sub
Je ne pense pas que ça soit la meilleure façon de le faire, et je pense que c'est pour ça que ça plante. Quelqu'un pourrait-il m'indiquer la bonne manière de faire ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Worksheets("Nom de la bonne feuille").Activate Range("La case").Select Valeur = ActiveCell.Value
Merci d'avance,
Martin McFly
Partager