arrer une macro qui à été lancé avec un ontime

moupa

XLDnaute Junior
Bonjour le forum

Voici mon soucis, j'ai mis en place une macro avec un ontime afin de copier un fichier csv d'un répertoire dans un autre répertoire. Jusque là normalement tout va bien:confused:
Mais voilà je voudrais aussi pouvoir l'arrêter quand je le veux, et c'est là que cela coince:mad:
je vous mets mon petit fichier et si un des grands experts du forum pourrait me dire ou j'ai fait une bêtise dans l'écriture ce serait sympa :)

merci d'avance
moupa
 

Pièces jointes

  • test_ontime.xlsm
    15.8 KB · Affichages: 40

Theze

XLDnaute Occasionnel
Re : arrer une macro qui à été lancé avec un ontime

Bonsoir,

C'est le problème quand on ne demande pas la déclaration explicite des variables :eek:( ("Option Explicit" en tête de module, cocher la case "Déclaration des variables obligatoire" dans "Outils" > "Option..." onglet "Editeur"). Ta variable "Depart" est = à rien dans "StopOnTime_copiefichier" puisqu'elle n'a pas de portée "Module".
Essai ces quelques lignes de code et regarde ce qui se passe en A1 :
Code:
Dim Depart As Date

Sub OnTime_copiefichier()

    Depart = Now + TimeValue("00:00:01")
    CopierFichier
    Application.OnTime Depart, "OnTime_copiefichier"
    
End Sub

Sub StopOnTime_copiefichier()

On Error Resume Next
Application.OnTime Depart, "OnTime_copiefichier", , False

End Sub

Sub CopierFichier()

    Range("A1") = Format(Depart, "hh:mn:ss")
    
End Sub

Hervé.
 

Discussions similaires

Statistiques des forums

Discussions
312 194
Messages
2 086 064
Membres
103 110
dernier inscrit
Privé