Bonjour,

J'ai à peine commencé à m'adapter au code VBA. Je suis d'habitude branché sur du code MATLAB: je pouvais créer plusieurs fichiers de procédures ou fonctions, pour ainsi donc structurer mes outils, faciliter la lecture et le débogage. Tout un script dans un seul fichier ne me facilite rien.

Ici je veux faire la même chose avec du VBA, mais je n'arrive pas à trouver la solution à mon problème qui est le suivant:

- Je souhaite faire de mon "ThisWorkBook" (comme en grafcet pour ceux qui s'y connaisse) mon programme principal, qui contiendra par exemple les procédures suivantes:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
Private Sub Prog_Prin()
    PRE_TRAITEMENT
    TRAITEMENT
    POST_TRAITEMENT
End Sub
PRE_TRAITEMENT est un script écrit dans la première page "Feuil1" ou "WorkSheet(1)", pareil pour TRAITEMENT dans "Feuil2" ("WorkSheet(2)"), idem pour POST-TRAITEMENT dans "Feuil3"("WorkSheet(3)"). Chacun possède un script particulier et doit être exécuter dès que "ThisWorkBook" l'appelle.

Ca ne pouvait pas exécuter car, si j'ai bien compris, la procédure est inconnue ou inexistante. J'ai du coup essayé de corriger ainsi:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
Private Sub Prog_Princ()
    WorkSheet(1).PRETAITEMENT
    WorkSheet(2).TRAITEMENT
    WorkSheet(3).POST-TRAITEMENT()
End Sub
ou en ajoutant un "Call" avant "WorkSheet(i_page).MonScript".

En bref: Comment exécuter un script (fonction, procédure, ou autre) venant d'un autre WorkSheet?

Merci beaucoup