Excelastuces

Logo Excelastuces

Comment envoyer un mail de notification en VBA

Nous avons vu, sur le blog, comment  calculer une échéance avec une durée en mois

ICI ► http://excelastuces.fr/2019/01/27/comment-calculer-des-echeances-avec-une-duree-en-mois-horodater/

Pour aller plus loin, nous allons voir comment envoyer un mail de notification en comparant la date du jour avec la date du rappel.

Il faudra néanmoins avoir OUTLOOK installé et en cours d’exécution sur votre ordinateur sinon ce code ne fonctionnera pas.

Votre fichier devra être sauvegardé en prenant en compte les Macros.

Ouvrez votre éditeur et ajouter un Module

Ici « Module1 »

i1

Dans ce module, nous allons mettre le code suivant :

On notera que nous utilisons Auto_Open() qui à la particularité d’exécuter le code dès que vous ouvrez le fichier.

Private Sub Auto_Open()

Dim DateEnvoie As String

DateEnvoie = Format(Now(), "dd/mm/yyyy") ' Date d'aujourd'hui

' On teste si outlook est ouvert
Set Appli = CreateObject("Outlook.Application")

If Appli.Explorers.Count = False Then MsgBox ("Outlook n'est pas ouvert!" & vbCrLf & vbCrLf & "Pour que la notification par mail du jour fonctionne" & vbCrLf & "Vous devez quitter Excel, démarrer Outlook et relancer le fichier")

' On compare la date du jour à rappeller avec la date d'aujourd'hui et on vérifie que Outlook est bien ouvert
If Range("C3").Value = DateEnvoie And Appli.Explorers.Count Then

' MAIL ==============================================================

Range("A2:E12").Select ' On sélectionne la partie de la feuille que l'on veux envoyer. Si c'est toute la feuille on éfface toute cette ligne

ActiveWorkbook.EnvelopeVisible = True

With ActiveSheet.MailEnvelope
.Introduction = "XXX" ' A la place des X : On met le message qui se trouvera dans la mail
.Item.To = "excelastuces@excelastuces.fr" ' Ici On met l'adresse mail du ou des destinataires pour la notification.
.Item.Subject = "XXX" ' A la place des X : On met l'objet du message
.Item.Send

End With

End If

End Sub

Vous pouvez adapter ce code selon vos envies!

 

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Retour en haut