Private Sub Workbook_Open()
Dim i&, d As Date, Texte$
Dim oApp As Object, oMail As Object
'Si la cellule B5 est vide alors on sort
If IsEmpty([B5]) Then Exit Sub
'Pour toutes les lignes de 5 jusqu'à la fin du tableau
For i = 5 To [B65536].End(3).Row
'Pour toutes les lignes dont la date (en colonne B) + 30 jours n'est pas encore dépassée
If Date + 30 < Cells(i, 2) Then
'Texte prend les valeurs des colonnes 7, 8, 6 et 2
Texte = Cells(i, 7) & Chr(32) & Cells(i, 8) & " à " & Cells(i, 6) & " le " & Cells(i, 2) & Chr(13) & Texte
End If
Next
'Préparation et envoi du mail avec les données.
Set oApp = CreateObject("Outlook.Application")
oApp.Session.Logon
Set oMail = oApp.CreateItem(0)
With oMail
.To = "tonadressemail@gmail.com"
.Body = "Voici les alertes événement :" & Chr(13) & Texte
.Subject = "Ton objet"
.Display 'Voir le message
'.Send 'Envoi le message
End With
Set oMail = Nothing
Set oApp = Nothing
End Sub