[VB excel] déclenchement macro heure donnée
Résolu
charlescharles
Messages postés
1
Statut
Membre
-
smiX -
smiX -
Bonjour à tous,
j'aimerais savoir s'il existe un moyen de lancer une macro VB excel à une heure précise, quotidiennement, automatiquement sans avoir à appuyer sur quelque bouton que ce soit.
par exemple, j'aimerais qu'une macro se déclenche tous les jours à 16h...
est-ce possible??
merci pour vos lumières!
j'aimerais savoir s'il existe un moyen de lancer une macro VB excel à une heure précise, quotidiennement, automatiquement sans avoir à appuyer sur quelque bouton que ce soit.
par exemple, j'aimerais qu'une macro se déclenche tous les jours à 16h...
est-ce possible??
merci pour vos lumières!
7 réponses
-
Bonjour, a tous je ne comprend pas pour quoi mon code ci-dessous ne fonctionne pas ou ci que l'envois du mail pas le déclenchement à heure fixe.
merci pour votre aide....
Sub SendPlng()
' lance la macro SendParMail à 09:00:00 heures
Application.OnTime TimeValue("15:51:00"), ("SendParMail"), True
End Sub
Sub SendParMail()
'cette macro envois par mail la feuille excel active
ThisWorkbook.Sheets("Fev").Copy
ActiveWorkbook.SendMail ("mohamed.hajjaji@free.fr")
ActiveSheet.Copy
End Sub-
Dans SendParMail(), je crois que tu dois ré-armer ton trigger/timer. Bref, rajouter une ligne du genre:
Application.OnTime TimeValue("15:51:00"), "SendParMail"
Avec OnTime, une fois ta fonction appellée à 15h51, elle ne sera pas réappelée le lendemain à 15h51. Ce serait trop beau ;-)
J'ai aussi une sheet Excel constament ouverte sur une station Reuters (taux de change, etc..). Dans l'auto_open(), je lance via OnTime un truc à 21h00. Dans la fonction appellée à 21h00, j'exécute mon code, j'attend 10 secondes (Application.Wait Now + TimeValue("00:00:10")) et puis je redemande une exécutuion à 21h00... (et j'espere qu'Excel comprendra que c'est 21h00 LE LENDEMAIN vu que je lui demande ça à 21:00 et 10 secondes :-) -
-
-
En y réflichissant un peu plus, tu peux lancer ta macro avec OnTime:
Application.OnTime(EarliestTime, Procedure, [LatestTime], [Schedule])
Mais ton fichier excel doit être ouvert... on en revient à mon intervention initiale: planification d'une tâche d'ouverture du fichier ;-)-
bonjour,
j'ai un probleme , et j'aurais besoin de ton aide...
Voici mon probleme:
J'ai dans une cellule A1 le temps qui s'afiche sous forme de chronomètre( c'est à dire l'équivalent de la fonction maintenant() sauf qu'elle est affichée sous forme de chronomètre)
J'ai dans une deuxieme cellule B1, figer une heure.
Et dans une 3ème C1 , j'obtiens le temps qui s'ecoule en faisant la différence entre A1 et B1.
Mon probleme actuel le temps écoulé se calcul 24h/24 et 7j/7, mais moi je voudrais que le temps qui s'écoule soit uniquement calculé sur les heures d'ouverture (8h-12h et 13h-17h).
Ansi, je voudrais que ma cellule qui calcul le temps écoulé soit active si et seulement si l'heure sous forme de chronometre dans ma cellule est comprise entre : 8h-12h et 13h-17h
Merci de ton aide......
-
-
le fichier est ouvert en permanence. je vais donc regarder du côté d'Application.OnTime(EarliestTime, Procedure, [LatestTime], [Schedule]), ça me semble pouvoir marcher...
je te ferai un feed back dés que j'aurai pu avancer ça...
en tous les cas merci pour ton aide!! -
Salut,
je n'ai pas essayer mais tu peux voir aussi côté gestionnaire de tâches pour voir si ton classeur tu peux l'ouvrir à une certaine heure. Ensuite le rélais est passe à ta macro.
lami20j -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
-
la fonction application.OnTime s'est révélée payante...
il suffit d'insérer ce code dans la macro Auto_Open de ThisWorkBook en indiquant l'heure et la macro (contenue dans un module) à démarrer à heure fixe.
lorsque le classeur est ouvert par l'utilisateur, excel 'lit' qu'il doit exécuter la macro indiquée et le tour est joué.
merci pour votre aide!! -
Bonjour,
pourquoi ne pas utiliser une tâche planifié (avec le planifiacteur de tâche) qui ouvrirait ton fichier excel contenant un macro sur évènement workbok_open?