Utilisation d’événements avec l’objet QueryTable
Avant de pouvoir utiliser des événements avec l’objet QueryTable , vous devez d’abord créer un module de classe et déclarer un objet QueryTable avec des événements. Par exemple, supposons que vous avez créé un module de classe et que vous l’avez ClsModQT
nommé . Ce module contient le code suivant :
Public WithEvents qtQueryTable As QueryTable
Une fois que vous avez déclaré le nouvel objet à l’aide d’événements, il apparaît dans la zone de liste Objet du module de classe.
Toutefois, avant l'exécution des procédures, vous devez lier l'objet déclaré dans le module de classe à l'objet QueryTable spécifié. Pour ce faire, vous pouvez entrer le code suivant dans le module de classe :
Sub InitQueryEvent(QT as Object)
Set qtQueryTable = QT
End Sub
Une fois que vous avez exécuté cette procédure d'initialisation, l'objet déclaré dans le module de classe pointe vers l'objet QueryTable spécifié. Vous pouvez initialiser l'événement dans un module en appelant cet événement. Dans cet exemple, la première table de requête de la feuille de calcul active est liée à l'objet qtQueryTable.
Dim clsQueryTable as New ClsModQT
Sub RunInitQTEvent
clsQueryTable.InitQueryEvent _
QT:=ActiveSheet.QueryTables(1)
End Sub
Vous pouvez écrire d'autres procédures événement dans la classe de l'objet. Lorsque vous cliquez sur le nouvel objet dans la zone Objet , les événements valides pour cet objet s’affichent dans la zone de liste Procédure .
Voir aussi
Assistance et commentaires
Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.