Non parce aue je l'utilise a l'interieur de la fonction callback "TimeProc" qui elle meme est applelée par SetTimer. La fonction SetTimer est elle-même déclenchée par "Workbook_open". Et dans ce cas de figure faites le test cela ne marche pas....... Je vous marque le code....peut être cela vous eclaireras.....
Encore merci!!
Private Sub Workbook_Open() 'Demarrage du compteur pour fermeture auto du classeur 'Fonction editee dans TempoFermeture StartTimer End Sub ___________________________________________________ ___________________________________________________
Public Declare Function SetTimer Lib "user32" ( _ ByVal hWnd As Long, ByVal nIDEvent As Long, _ ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long Public Declare Function KillTimer Lib "user32" ( _ ByVal hWnd As Long, ByVal nIDEvent As Long) As Long
Public TimerID As Long Public TimerSeconds As Single
'Demarrage du compteur 'Cette fonction est appelee a l'ouverture du classeur Sub StartTimer() TimerSeconds = 600 'frequence d'actualisation du compteur TimerID = SetTimer(0&, 0&, TimerSeconds * 1000&, AddressOf TimerProc) End Sub
'Arret du compteur Sub EndTimer() On Error Resume Next KillTimer 0&, TimerID End Sub
'procedure appelee cycliquement pqr windows 'le temps de cycle est egal a la valeur de la variable TimerSeconds (exprimee en ms )*1000 Sub TimerProc(ByVal hWnd As Long, ByVal uMsg As Long, _ ByVal nIDEvent As Long, ByVal dwTimer As Long) 'Fin du compteur pour fermeture auto du classeur EndTimer Fermeture End Sub
Sub Fermeture() ThisWorkbook.Save Windows("Base AdD et DA.MEI.V49.xls").Activate ActiveWindow.Close End Sub
|