Bonjour,
Je voudrais qu'un document s'envoie automatiquement chaques jours à 16h par mail..
Pourriez-vous m'indiquer comment faire ?
Merci d'avance :)
Version imprimable
Bonjour,
Je voudrais qu'un document s'envoie automatiquement chaques jours à 16h par mail..
Pourriez-vous m'indiquer comment faire ?
Merci d'avance :)
Bonjour,
Mets cette macro dans le module "ThisWorkbook" :
Dans un module standard, mets celle-ciCode:
1
2
3 Private Sub Workbook_Open() Application.OnTime TimeValue("16:0:0"), "EnvoiDoc" End Sub
Tu dois ouvrir le classeur avant 16h. Tu peux utiliser le planificateur de tâches pour ouvrir le classeur.Code:
1
2
3
4 Sub EnvoiDoc() Workbooks.Open "c:\temp\classeur.xlsx" Workbooks("classeur.xlsx").SendMail "test@toto.com", "Sujet" End Sub
Pour ce genre de procédé, il semblerait plus logique de s'orienter vers du VBScript plutôt que du VBA Excel.
Et de le mettre en tâche planifiée Windows (ce qui éviterait la nécessité d'avoir Excel ouvert au moment du lancement).
Bonjour,
rectification, ce sera plus simple ainsi je pense..
Je voudrais qu'un document s'enregistre automatiquement chaques jours à 16h dans un dossier différent (sur le même serveur) avec la date du jour comme nom...
Un document nous servant à répertorier les malades du jour pour les différents suivis, et donc si cela était possible d'automatiser le fait qu'il s'enregistre chaque jour dans un dossier sur le même serveur avec comme nom la date du jour de manière à ce qu'il ne s'écrase pas à chaque enregistrement.
Celui-ci se trouve dans : W:\-=Plannif=-\-=MALADES du jour=-
Et devrait s'enregistrer chaque jour à 16h dans : W:\-=Plannif=-\-=MALADES du jour=-\ARCHIVES
Pour enregistrer un fichier en donnant un nom de dossier, tu peux utiliser la méthode SaveAs, membre de l'objet WorkBook.
Personnellement, j'utiliserais plutôt un simple Save (pour remettre à jour le fichier avec les dernières données saisies) suivi d'une copie du fichier lui-même.
Dans les deux cas, le nom de fichier étant une simple chaîne de caractères, il est possible de la construire comme in souhaite, par exemple avec une racine invariable plus une fonction "date()"
Bonjour,
voir aussi la méthode SaveCopyAs …