Bonjour, j'ai trouvé un script vba que j'ai adapté à ce que je voulais, mais je me retrouve avec un problème car je n'arrive pas à faire.
Le script permet de vérifier une date d'expiration et d'envoyer aux personnes concernées un mail les prévenants de l'expiration d'un certificats.
Là ou je bloque c'est que l'alerte dois se faire avant 60 jours et 30 jours
mais si j'automatise la macro tous les jours, les personnes vont recevoir un mails tous les jours, et j'aimerai que ce mail soit envoyé une fois à partir de 60 jrs et une autre à partir de 30 jrs.
si vous pouvez m'aider.
Merci
Si je ne suis pas claire n'hésitez pas.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Sub envoimail()
 
Dim messagerie As Object
Dim email As Object
Dim cel As Range
Dim delai As Integer
 
Set messagerie = CreateObject("Outlook.Application")
 
delai = 60 'jours
 
For Each cel In Range("A2:A" & Range("A2").End(xlDown).Row)
    If cel.Offset(, 0).Value - Now < delai Then
 
        Set email = messagerie.CreateItem(0)
 
        With email
            .to = cel.Offset(, 4).Value
            .Bcc = cel.Offset(, 5).Value
            .Subject = "Expiration " & "[" & cel.Offset(, 2) & "]"
            .body = "Bonjour," & vbCrLf & vbCrLf & "corps du message" & cel.Offset(, 3) & " arrive à échéance le " & cel.Offset(, 0) & vbCrLf & "corps du message" & vbCrLf & "corps du message" & vbCrLf & "signature" & vbCrLf & "Tel:"
 
            .ReadReceiptRequested = True
            .display ' à remplacer par .send si ok
        End With
 
        Set email = Nothing
 
    End If
Next cel
 
Set messagerie = Nothing
 
End Sub