Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Envoyer un mail (contenant une plage excel) à intervalle régulier

vdh_xavier

XLDnaute Junior
Bonjour à tous,

J'ai un problème dans une macro excel : J'aimerais qu'un mail contenant une plage de données précise s'envoie automatiquement par exemple tous les lundis.

L'adresse du destinataire est toujours la même.

J'ai réussi à créer la macro pour envoyer le mail, me je ne parviens pas à y ajouter l'exécution automatique ni la récurrence hebdomadaire.

Voici mon code :

Sub Mail()


Sheets("Retards MD").Range("B2:C3").Select
ActiveWorkbook.EnvelopeVisible = True

With ActiveSheet.MailEnvelope
.Introduction = "Rapport du lundi matin."
.Item.To = "xx.x@xx.com"
.Item.Subject = "Retards MD"
.Item.Send

End With
End Sub


De plus, la plage de données concernée prend des informations d'un autre fichier excel. Faut-il donc d'abord faire une macro pour récupérer les données avant de faire l'envoi par mail?

Quelqu'un sait-il m'aider?

Je vous remercie d'avance pour votre aide.

Xavier
 

Yaloo

XLDnaute Barbatruc
Re : Envoyer un mail (contenant une plage excel) à intervalle régulier

Bonsoir Xavier,

Pour l'envoi tous les lundis, il faut faire un code à l'ouverture de ton fichier.

Par exemple, celui ci-dessous :
VB:
Private Sub Workbook_Open()
If Weekday(Date) = 2 Then MsgBox "Ta macro mail"
End Sub

A+

Martial
 

Yaloo

XLDnaute Barbatruc
Re : Envoyer un mail (contenant une plage excel) à intervalle régulier

Oups ! je n'avais pas lu jusqu'à la fin

Oui il faut en premier lieu ouvrir ton fichier, ou bien récupérer les données sans ouvrir le fichier (avec la méthode ADO).

A+
 

vdh_xavier

XLDnaute Junior
Re : Envoyer un mail (contenant une plage excel) à intervalle régulier

Sorry pour la réponse tardive, mais j'étais en vacances.

Tout grand merci pour votre aide, j'essaie ça immédiatement.

Bonne journée

Xavier
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…