Alerte email automatique selon échéancier prédéfini

Bonjour le Forum,

Complètement novice dans le domaine et en train de monter un projet, je cherche à programmer des alertes automatiques reçues sur une boite email, calquées sur des deadlines dans un fichier Excel. J'ai des jalons/deadlines prédéfinies dans la colonne D et je voudrais que, à l'ouverture du fichier, la macro envoi une alerte par email. Pour le moment, j'ai réussi à le faire mais je reçois 3 emails pour la tâche 1 et 2 emails pour la tâche 2... Si quelqu'un peut me dire ce qui cloche dans ma ligne de commande afin de recevoir seulement 1 email par tâche. En vous remerciant par avance

Sub Auto_Open()

Dim C As Range, olApp As Object, M As Object

Set olApp = CreateObject("Outlook.application")

Set M = olApp.CreateItem(olMailItem)

For Each C In Range("D2", Cells(Rows.Count, 4).End(xlUp))

If C >= Date Then

If C - Date <= 1 Then

Set M = olApp.CreateItem(olMailItem)

With M

.Subject = "Rappel Tache 1"

.Recipients.Add "emailadress"

.Send

' .display

End With

End If

Set M = Nothing

End If

Next C

For Each C In Range("D3", Cells(Rows.Count, 4).End(xlUp))

If C >= Date Then

If C - Date <= 2 Then

Set M = olApp.CreateItem(olMailItem)

With M

.Subject = "Rappel Tache 2"

.Recipients.Add "emailadress"

.Send

' .display

End With

End If

Set M = Nothing

End If

Next C

Set olApp = Nothing

End Sub

19classeur1.xlsm (15.80 Ko)

Bonjour,

Il y a un truc vraiment bizarre dans ce que tu veux faire

Tu sembles confondre délai de retard et numéro de la tâche !?

Franchement, c'est incompréhensible....

Sinon tu passe 2 fois sur les mêmes lignes à part pour la première

' De la cellule D2 à  la dernière
For Each C In Range("D2", Cells(Rows.Count, 4).End(xlUp))
' De la cellule D3 à la dernière
For Each C In Range("D3", Cells(Rows.Count, 4).End(xlUp))

A+

Rechercher des sujets similaires à "alerte email automatique echeancier predefini"