Dudu2
XLDnaute Barbatruc
Bonjour les Excellents,
Excel a jugé bon de ne pas déclencher l'évènement Worksheet_Activate() sur la feuille affichée / activée à l'ouverture du classeur.
Ce n'est pas une très bonne idée de mon point de vue car cela empêche par exemple d'exécuter un traitement préalable à l'affichage d'une feuille.
J'utilise le subterfuge suivant (voir fichier):
La question est: existe-t-il une méthode plus simple ?
Cordialement.
Excel a jugé bon de ne pas déclencher l'évènement Worksheet_Activate() sur la feuille affichée / activée à l'ouverture du classeur.
Ce n'est pas une très bonne idée de mon point de vue car cela empêche par exemple d'exécuter un traitement préalable à l'affichage d'une feuille.
J'utilise le subterfuge suivant (voir fichier):
VB:
'Code Workbook:
'--------------
Private Sub Workbook_Open()
Application.EnableEvents = False
ActiveCell.Offset(1).Select
Application.EnableEvents = True
ActiveCell.Offset(-1).Select
End Sub
'Code Worksheet:
'---------------
Private ProcessOnFirstDisplayDone As Boolean
Private Sub Worksheet_Activate()
If Not ProcessOnFirstDisplayDone Then MsgBox "ProcessOnFirstDisplayDone"
ProcessOnFirstDisplayDone = True
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not ProcessOnFirstDisplayDone Then Call Worksheet_Activate
End Sub
La question est: existe-t-il une méthode plus simple ?
Cordialement.
Pièces jointes
Dernière édition: