Bonjour,

J'utilise les timers VBA d'Arkham dans mes applications. Ca fonctionne

Je cherche juste à faire une amélioration si c'est possible, à savoir arrêter tous les timers qui serait activés.

Ici, les API

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
'Déclaration d'API pour timer
Private Declare Function APISetTimer Lib "user32.dll" Alias "SetTimer" (ByVal hwnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerProc As Long) As Long
Private Declare Function APIKillTimer Lib "user32.dll" Alias "KillTimer" (ByVal hwnd As Long, ByVal uIDEvent As Long) As Long
Ici, le code pour les arrêter

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
Private Sub ArretTimers(uIDEvent As Long)
 
 
    APIKillTimer Application.hWndAccessApp, uIDEvent
 
End sub
Ou uIDEvent est le numéro du timer.

Je voudrais donc une procédure supplémentaire (je veux garder la possibilité de les arrêter indépendamment) ou je n'ai pas besoin de passer le numéro du timer en paramètre.

J'ai essayé de modifier la fonction comme suit :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
Private Declare Function APIKillTimer Lib "user32.dll" Alias "KillTimer" (ByVal hwnd As Long)
Je n'ai pas d'erreur, mais les timers continuent de fonctionner.

Merci pour votre aide.

Domi2