Il est de bon ton de se souhaiter la bonne année. Mais vous, et vous seul, pourrez faire en sorte que cette année soit bonne, meilleure que celle qui vient de s'écouler. Apprenez à ne compter que sur vous, car personne n'est plus qualifié que vous-même pour bâtir, réparer ou améliorer votre propre vie. Personne ne fera les choses à votre place. D'ailleurs, tout ce que les autres peuvent faire, c'est souhaiter que vous le fassiez. Et ne croyez pas que tout ceux qui vous entourent vous apporteront des solutions : certains font juste partie de vos problèmes. Transformez vos résolutions en actes, et dans douze mois, retournez-vous et souriez-vous fièrement : C'était long. C'était difficile. Mais ça y est : 2017 était une bonne année, merci Moi.

Ordre d'exécution des procédures

On quitte Excel, et on a fait des modifications non sauvegardées dans un classeur

1. Workbook_BeforeClose
2. Message : Voulez-vous enregistrer les modifications ? Répondez oui
3. Workbook_WindowDeactivate
4. Workbook_Deactivate
5. Workbook_BeforeSave

Ces 5 étapes étant à multiplier par le nombre de classeurs ouverts !

On est dans l'onglet Feuil1, et on clique dans l'onglet Feuil2 du même classeur

Admettons que tous les événements de worksheet et de workbook contiennent du code. Admettons que nous sommes dans l'onglet Feuil1 et que nous cliquons dans l'onglet Feuil2. Les procédures seront exécutées dans cet ordre :

1. WorkSheet_Deactivate (de Feuil1)
2. Workbook_SheetDeactivate
3. Worksheet_Activate (de Feuil2)
4. Workbook_SheetActivate

On est dans Feuil1, et on crée un nouvel onglet

1. Workbook_NewSheet
2. Worksheet_Deactivate (Feuil1)
3. Workbook_SheetDeactivate (Feuil1)
4. Workbook_SheetActivate

On est dans un classeur Classeur1, et on clique dans l'autre classeur Classeur2

Admettons que nous ayons 2 classeurs côte à côte (Fenêtre/Mosaïque), et que partant du Classeur1, nous cliquons dans Classeur2 (Sans tenir en compte les onglets, puisque quand on passe d'un classeur à l'autre, si on veut également changer d'onglet, il est nécessaire de cliquer une fois de plus sur l'onglet en question, sinon ça ne marche pas)

1. Workbook_WindowDeactivate (Classeur1)
2. Workbook_Deactivate (Classeur1)
3. Workbook_Activate (Classeur2)
4. Workbook_WindowActivate (Classeur2)

On est dans une autre application et on active Excel

Dans ce cas, AUCUNE procédure n'est effectuée.

On écrit quelque chose dans une cellule et on valide avec Enter

Comme on valide avec Enter, si Excel est configuré pour que le curseur descende d'une case, l'événement en gras s'exécute en plus que si on validait avec le petit V à gauche de la barre de formule, ou si Enter ne faisait pas descendre d'une case

1. Worksheet_Change
2. Workbook_SheetChange
3. Worksheet_SelectionChange

On est dans une cellule, et on clique dans une autre cellule qui contient un lien hypertexte

1. Worksheet_SelectionChange
2. Worksheet_FollowHyperlink *
3. Workbook_SheetFollowHyperlink *

* Ces procédures n'auront le loisir de s'effectuer que quand on RECLIQUERA dans Excel... Peut-être une heure plus tard...

On est dans une cellule et on clique dans une autre cellule avec le bouton droit de la souris

1. Worksheet_Change
2. Workbook_SheetChange
3. Worksheet_SelectionChange
4. WorkSheet_BeforeRightClick
5. Workbook_SheetBeforeRightClick

On ferme un classeur (après avoir fait des modifications non encore sauvegardées), et c'est un autre classeur qui se trouvait derrière qui devient donc actif

1. Workbook_BeforeClose
Message : Voulez-vous enregistrer les modifications ? On répond Oui
2. WorkBook_BeforeSave
3. WorkBook_WindowDeactivate
4. Workbook_Deactivate
5. Workbook_Activate (L'autre classeur)
6. Workbook_WindowActivate (L'autre classeur)

On ouvre un classeur, alors qu'il y a déjà un classeur ouvert

1. Workbook_Open
2. Workbook_WindowDeactivate (Ancien classeur)
3. Workbook_Deactivate (Ancien Classeur)
4. Workbook_Activate
5. Workbook_WindowActivate