Execution d'une macro 1 fois par semaine

Résolu/Fermé
Pyrisis Messages postés 9 Date d'inscription mercredi 10 mai 2017 Statut Membre Dernière intervention 15 mai 2017 - 10 mai 2017 à 15:51
Pyrisis Messages postés 9 Date d'inscription mercredi 10 mai 2017 Statut Membre Dernière intervention 15 mai 2017 - 15 mai 2017 à 11:06
Bonjour,

J'ai fais une macro qui envoie un mail selon un tableau, seulement j'aimerai que les mail soit envoyer 1 fois par semaine et non a chaque fois que l'on ouvre le fichier.
Comment pourrait-je faire

Ps: le document est disponible sur un serveur il faut donc que cela marche de n'importe quel ordinateur.

Merci d'avance
A voir également:

2 réponses

yg_be Messages postés 23476 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 20 février 2025 Ambassadeur 1 568
10 mai 2017 à 19:15
bonsoir, je te suggère d'enregistrer dans le fichier le moment où la macro travaille, donc de faire ainsi:
1) quand la macro commence à travailler, elle vérifie que le moment enregistré est plus récent qu'une semaine, sinon la macro ne fait rien
2) si le moment enregistré est plus ancien qu'une semaine, la macro remplace ce moment par maintenant, puis fait son travail habituel
qu'en pense-tu?
1
Pyrisis Messages postés 9 Date d'inscription mercredi 10 mai 2017 Statut Membre Dernière intervention 15 mai 2017 1
11 mai 2017 à 08:47
Bonjour, Cette solution me parait tous a fait satisfaisante.
Mais comment pourrais-je faire pour que la macro vérifie que l'enregistrement date de moins d'une semaine?
0
yg_be Messages postés 23476 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 20 février 2025 1 568
11 mai 2017 à 09:06
Travailles-tu dans Excel? Ta macro est-elle écrite en VBA?
0
Pyrisis Messages postés 9 Date d'inscription mercredi 10 mai 2017 Statut Membre Dernière intervention 15 mai 2017 1 > yg_be Messages postés 23476 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 20 février 2025
11 mai 2017 à 09:07
Oui je travaille sur excel et ma macro est écrite en vba
0
yg_be Messages postés 23476 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 20 février 2025 1 568 > Pyrisis Messages postés 9 Date d'inscription mercredi 10 mai 2017 Statut Membre Dernière intervention 15 mai 2017
11 mai 2017 à 16:16
par exemple:
Sub test()
Dim dernierboulot As Date
dernierboulot = Cells(7, 2).Value
If dernierboulot > Now() - 7 Then
    Debug.Print "rien à faire"
Else
    Debug.Print "au travail"
    Cells(7, 2).Value = Now()
End If

End Sub
0
Pyrisis Messages postés 9 Date d'inscription mercredi 10 mai 2017 Statut Membre Dernière intervention 15 mai 2017 1
15 mai 2017 à 11:06
Merci beaucoup ça marche !!!!
merci merci merci
0

Discussions similaires