J'ai une requête sur ma "Feuil1" vers une liste SharePoint :
J'ai intégrer cet événement à la "Feuil1" où se situe ma requête pour qu'à chaque actualisation de la requête, la date vienne s'écrire dans la cellule M1:
Le problème c'est que rien ne se passe, et je suppose que j'ai du oublier certains éléments dans mon code sachant que je ne connais rien au fonctionnement des évenements,
Option Explicit
Private Sub Workbook_Open()
Call InitializeQueries
End Sub
Dans un module standard :
VB:
Option Explicit
Dim colQueries As New Collection
Sub InitializeQueries()
Dim clsQ As clsQuery
Dim WS As Worksheet
Dim QT As QueryTable
Dim lo As ListObject
For Each WS In ThisWorkbook.Worksheets
For Each QT In WS.QueryTables
Set clsQ = New clsQuery
Set clsQ.MyQuery = QT
colQueries.Add clsQ
Next QT
On Error Resume Next
For Each lo In WS.ListObjects
Set QT = lo.QueryTable
Set clsQ = New clsQuery
Set clsQ.MyQuery = QT
colQueries.Add clsQ
Next lo
Next WS
End Sub
Dans un module de classe (clsQuery) :
VB:
Option Explicit
Public WithEvents MyQuery As QueryTable
Private Sub MyQuery_AfterRefresh(ByVal Success As Boolean)
If Success Then Sheets("Suivi journalier air").Range("R4").Value = Format(VBA.Now, "yyyy-MM-dd hh:mm")
End Sub