On Time Time value ne marche pas

Y compris Power BI, Power Query et toute autre question en lien avec Excel
Répondre
h
hugo.c
Membre habitué
Membre habitué
Messages : 55
Inscrit le : 24 février 2016
Version d'Excel : 2007

Message par hugo.c » 13 février 2019, 18:02

Bonjour,

Je cherche à exécuter automatiquement plusieurs macro à une heure fixe dans la journée :

Voici mon code place dans « this workbook »

Private Sub Worbook_Open ()
Application.ontime timevalue (« 7:00:00 »), « Macro1 »
Application.ontime timevalue (« 7:00:10 »), « Macro2 »
End Sub

Cependant le message suivant s’affiche à l’execution :

Le Can not run the macro the macro may not be available in this workbook or all macros may be disabled’´

A savoir que les procédures macro1 et macro 2 sont rédiger dans « Sheet1 » et « sheet2 »

Pouvez vous m’aider à savoir pourquoi ça ne fonctionne pas ?

Merci
A
Andre13
Membre impliqué
Membre impliqué
Messages : 1'771
Appréciations reçues : 120
Inscrit le : 13 juillet 2017
Version d'Excel : 2007-2013

Message par Andre13 » 13 février 2019, 19:38

Bonjour toutes et tous,
peut être comme ceci:
Private Sub Worbook_Open ()
Application.OnTime TimeValue("19:00:00"), "Macro1"
Application.OnTime TimeValue("19:00:10"), "Macro2"
End Sub
vu ici https://docs.microsoft.com/fr-fr/office ... ion.ontime
crdlt,
André
Avatar du membre
thev
Membre impliqué
Membre impliqué
Messages : 2'682
Appréciations reçues : 225
Inscrit le : 13 juin 2016
Version d'Excel : 2019 FR 64 bits

Message par thev » 13 février 2019, 19:51

Bonsoir,

ça ne fonctionne pas parce que pour que VBA trouve la macro dans Sheet1, il faut que cette dernière:
1- soit déclarée publique : Sub et non Private Sub
2- soit préfixée par les objets feuille correspondant à Sheet1 et Sheet2

si l'objet feuille de la feuille Sheet1 est également Sheet1, alors il faut mettre
Application.OnTime TimeValue("19:00:00"), "Sheet1.macro1"
sinon avec le nom de la feuille :
Application.OnTime TimeValue("19:00:00"), Sheets("Sheet1").CodeName & ".macro1"
car Sheets("Sheet1").CodeName fournit le nom de l'objet Feuille.
h
hugo.c
Membre habitué
Membre habitué
Messages : 55
Inscrit le : 24 février 2016
Version d'Excel : 2007

Message par hugo.c » 16 février 2019, 11:37

Hello,
Oui merci pour l’astuce cela fonctionne maintenant ;)
Répondre
  • Sujets similaires
    Réponses
    Vues
    Dernier message
  • Time sheet
    par Loubna » 12 juin 2014, 17:29 » dans Excel - VBA
    1 Réponses
    1013 Vues
    Dernier message par Nad
    12 juin 2014, 17:35
  • Livraison On Time (Yes or No)
    par Bennut » 6 décembre 2019, 12:30 » dans Excel - VBA
    4 Réponses
    99 Vues
    Dernier message par eriiic
    6 décembre 2019, 14:09
  • application on time
    par naubin1 » 27 avril 2018, 14:37 » dans Excel - VBA
    11 Réponses
    197 Vues
    Dernier message par eriiic
    2 mai 2018, 16:12
  • time series
    par AZEMANAR » 7 janvier 2019, 10:01 » dans Excel - VBA
    1 Réponses
    55 Vues
    Dernier message par jmd
    7 janvier 2019, 17:37
  • Run-time error '13'
    par Lilette » 7 juin 2019, 18:28 » dans Excel - VBA
    7 Réponses
    107 Vues
    Dernier message par James007
    10 juin 2019, 13:02
  • recursivite avec on time
    par kedorev » 8 décembre 2015, 14:29 » dans Excel - VBA
    1 Réponses
    167 Vues
    Dernier message par kedorev
    5 janvier 2016, 10:50