Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Stéphane Santon
Bonjour,
Trouvé : Créer un module de classe. Ci-dessous extrait de l'aide .
Utilisation d'événements avec l'objet QueryTable
Avant de pouvoir utiliser des événements avec l'objet QueryTable, vous devez créer un nouveau module de classe et déclarer un objet QueryTable avec des événements. Par exemple, supposons que vous ayez créé un nouveau module de classe appelé ClsModQT. Ce module contient le code suivant :
Public WithEvents qtQueryTable As QueryTable
Après avoir déclaré le nouvel objet en utilisant des événements, il s'affiche dans la liste déroulante 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
Après avoir 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:¬tiveSheet.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 sont affichés dans la liste déroulante Procédure.
Lorsque l'on affecte une valeur à QueryTable.RefreshPeriod > 0, la table est mise à jour périodiquement. Comment exécuter automatiquement une fonction perso lorsque la table a été mise à jour ??
-- ** Anti-Spam : ajouter [usenet] dans l'objet pour ne pas être rejeté.
Cordialement, Stéphane *** http://www.team-santonum.com Loisirs, nature, arts, technologie : accueil en Charente-Maritime
Bonjour,
Trouvé : Créer un module de classe. Ci-dessous extrait de l'aide .
Utilisation d'événements avec l'objet QueryTable
Avant de pouvoir utiliser des événements avec l'objet QueryTable, vous
devez créer un nouveau module de classe et déclarer un objet QueryTable
avec des événements. Par exemple, supposons que vous ayez créé un
nouveau module de classe appelé ClsModQT. Ce module contient le code
suivant :
Public WithEvents qtQueryTable As QueryTable
Après avoir déclaré le nouvel objet en utilisant des événements, il
s'affiche dans la liste déroulante 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
Après avoir 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:¬tiveSheet.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 sont affichés dans la liste
déroulante Procédure.
Lorsque l'on affecte une valeur à QueryTable.RefreshPeriod > 0,
la table est mise à jour périodiquement.
Comment exécuter automatiquement une fonction perso lorsque la table a
été mise à jour ??
--
** Anti-Spam : ajouter [usenet] dans l'objet pour ne pas être rejeté.
Cordialement, Stéphane *** http://www.team-santonum.com
Loisirs, nature, arts, technologie : accueil en Charente-Maritime
Trouvé : Créer un module de classe. Ci-dessous extrait de l'aide .
Utilisation d'événements avec l'objet QueryTable
Avant de pouvoir utiliser des événements avec l'objet QueryTable, vous devez créer un nouveau module de classe et déclarer un objet QueryTable avec des événements. Par exemple, supposons que vous ayez créé un nouveau module de classe appelé ClsModQT. Ce module contient le code suivant :
Public WithEvents qtQueryTable As QueryTable
Après avoir déclaré le nouvel objet en utilisant des événements, il s'affiche dans la liste déroulante 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
Après avoir 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:¬tiveSheet.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 sont affichés dans la liste déroulante Procédure.
Lorsque l'on affecte une valeur à QueryTable.RefreshPeriod > 0, la table est mise à jour périodiquement. Comment exécuter automatiquement une fonction perso lorsque la table a été mise à jour ??
-- ** Anti-Spam : ajouter [usenet] dans l'objet pour ne pas être rejeté.
Cordialement, Stéphane *** http://www.team-santonum.com Loisirs, nature, arts, technologie : accueil en Charente-Maritime
michdenis
Bonjour Stéphane,
Tu peux essayer ceci :
Il ne te reste plus qu'à lancer "RoutineMiseAjour"
'--------------------- Sub MiseAJourQueryTable()
Worksheets("Feuil1").QueryTables("sonNom_Ou_SonIndex").Refresh False 'Exécution de ta fonction personnalisée RoutineMiseAjour
End Sub '--------------------- Sub RoutineMiseAjour() Application.OnTime Now + TimeValue("00:00:15"), "MiseAJourQueryTable" End Sub '---------------------
Salutations!
"Stéphane Santon" a écrit dans le message de news: Bonjour,
Lorsque l'on affecte une valeur à QueryTable.RefreshPeriod > 0, la table est mise à jour périodiquement.
Comment exécuter automatiquement une fonction perso lorsque la table a été mise à jour ??
-- ** Anti-Spam : ajouter [usenet] dans l'objet pour ne pas être rejeté.
Cordialement, Stéphane *** http://www.team-santonum.com Loisirs, nature, arts, technologie : accueil en Charente-Maritime
Bonjour Stéphane,
Tu peux essayer ceci :
Il ne te reste plus qu'à lancer "RoutineMiseAjour"
'---------------------
Sub MiseAJourQueryTable()
Worksheets("Feuil1").QueryTables("sonNom_Ou_SonIndex").Refresh False
'Exécution de ta fonction personnalisée
RoutineMiseAjour
End Sub
'---------------------
Sub RoutineMiseAjour()
Application.OnTime Now + TimeValue("00:00:15"), "MiseAJourQueryTable"
End Sub
'---------------------
Salutations!
"Stéphane Santon" <news310@team-santonum.com> a écrit dans le message de news:40F685C5.85A96C93@team-santonum.com...
Bonjour,
Lorsque l'on affecte une valeur à QueryTable.RefreshPeriod > 0,
la table est mise à jour périodiquement.
Comment exécuter automatiquement une fonction perso lorsque la table a
été mise à jour ??
--
** Anti-Spam : ajouter [usenet] dans l'objet pour ne pas être rejeté.
Cordialement, Stéphane *** http://www.team-santonum.com
Loisirs, nature, arts, technologie : accueil en Charente-Maritime
Il ne te reste plus qu'à lancer "RoutineMiseAjour"
'--------------------- Sub MiseAJourQueryTable()
Worksheets("Feuil1").QueryTables("sonNom_Ou_SonIndex").Refresh False 'Exécution de ta fonction personnalisée RoutineMiseAjour
End Sub '--------------------- Sub RoutineMiseAjour() Application.OnTime Now + TimeValue("00:00:15"), "MiseAJourQueryTable" End Sub '---------------------
Salutations!
"Stéphane Santon" a écrit dans le message de news: Bonjour,
Lorsque l'on affecte une valeur à QueryTable.RefreshPeriod > 0, la table est mise à jour périodiquement.
Comment exécuter automatiquement une fonction perso lorsque la table a été mise à jour ??
-- ** Anti-Spam : ajouter [usenet] dans l'objet pour ne pas être rejeté.
Cordialement, Stéphane *** http://www.team-santonum.com Loisirs, nature, arts, technologie : accueil en Charente-Maritime