Bonjour,

J'aime bien dans mes procédure faire appel à une autre procédure qui fait gagner du temps à la procédure principale :

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
Sub Macro_Début()
 
        Application.ScreenUpdating = False
        IntÉCalc = Application.Calculation
        Application.Calculation = xlCalculationManual
        Set FlAct = ActiveSheet
 
End Sub
 
Sub Macro_Lambda
 
      Call Macro_Début
 
      Code...
 
      Call Macro_Fin
 
End Sub
Les variables IntÉCalc et FlAct sont publiques, de façon à ce que leur contenu soit réutilisé en fin de macro:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
Sub Macro_Fin()
 
        Application.Calculation = IntÉCalc
        FlAct.Activate
 
End Sub
Le hic, c'est que leur valeur est perdue dès la fin de la procédure Macro_Début. L'espion indique "Hors de contexte".

Dès fois ça le fait, dès fois ça ne le fait pas. Là, ça le fait, même après redémarrage...

Pourquoi?!