Bonjour à tous,

Autodidacte en VBA, j'avais pris l'habitude d'écrire mes procédures au fur et à mesure de mes besoins...
en gros, l'ensemble de mon code était écrit dans un seul module, et jusque là, ça fonctionnait pas mal.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
sub 1 ()
A=calcul de A
B=calcul de B
....
end sub 1
 
sub 2()
C=calcul de C
D=Calcul de D
....
end Sub 2
un collègue me conseille à juste titre d'améliorer mon code en isolant mes calculs dans des functions séparées...

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
Sub 1()
calculA + CalculB+CalculC
....
End Sub1
 
function calculA () as long
....
end function 
 
Function calculB() as long
....
end funtion
 
Function calculC() as long
....
end funtion
cela me parait effectivement plus propre, mais lorsque j'éxécute pas à pas, comme mes calcul sont appelés trés souvent, je vois mes appels de function se succéder dans tous les sens au fur et j'ai énormément de mal à suivre le déroulement des calcules. alors que, avec ma méthode, je fais mon calcul une fois et j'utilise mes Variable A, B C... directement

quelle est la bonne méthode pour savoir quand faire une fonction et quand faire un sub?

Merci à tous.