Lancer une macro a une date !

Bonsoir !

Dans le cadre d'un petit projet, j'aimerai qu'une macro s'execute automatiquement sous excel tout les début de lundi de chaque semaine!
comment faire ?

tks d'avance
Configuration: Windows XP
Firefox 3.5.2

7 réponses

  1. essaye quelque chose comme ça

    If weekday(Now,2)=2 then
    Ta macro...
    end if

    et tu insere ce code dans la page de code workbook de ton classeur excel et tu change la liste déroulante en haut à gauche de "générale" en "workbook"

    ça lancera la macro à l'ouverture du classeur

    seule condition: tu doit ouvrir le classeur tout les lundi matin...
    1. Now est une fonction VBA qui contient la date et l'heure du moment correspondant à la date et à l'heure de ton système (ordi)

      pour en savoir plus, tu sélectionne le mot now sur ta page de code et tu tape F1... la page d'aide VBA s'ouvrira direct sur l'aide pour la fonction now...
      1. Contributeur
        Bonjour,
        la solution par macro avec des fonctions comme NOW nécessite que le classeur soit ouvert et q'une boucle permette d'attendre, ça parait un peu délicat...
        Personnellement, je pencherais plutôt pour une tache planifiée windows qui ouvre le classeur en plaçant la macro dans l'événement Workbook_Open()...attention à 2 points : tester le jour ds la macro si ce classeur peut etre ouvert à d'autres moments, le PC doit etre allumé pour que la tache planifiée se lance....
        1. Qu'est-ce que tu entend par "q'une boucle permette d'attendre"...
          1. Contributeur
            bah pour lancer un traitemement automatiquement à un moment donné, il faut bien pouvoir tester périodiquement ce moment pour savoir qd éxécuter la procédure. Cela ne peut se faire que par un traitrement qui tourne en continu avec un boucle genre "while not now = moment, wait x sceondes....." => un traitement tourne en continu pour verifier le "moment" et appelle la procédure qd il faut, d'où ma proposition d'utiliser le service "scheduler" de windows....