Bonjour à tous,

Après avoir réussi quelques lignes de code, mon besoin à évoluer...et j'arrive au terme de mes (très) maigres compétences Macro !

Je me permets donc de solliciter votre expertise pour deux problématiques :

1/ Je souhaitais initialement recevoir un mail pour chaque ligne qui répondait à un critère. Cela fonctionne parfaitement !
Aujourd'hui, j'ai besoin, non pas de recevoir un mail pour chaque ligne, mais de recevoir un seul mail contenant une liste des cellules qui répondent au critère défini...et impossible de trouver la solution !

2/ J'étais initialement également la seule destinataire...Aujourd'hui je dois envoyer un mail à des destinataires différents, avec une liste différentes (For i de 1 à x c'est telle personne), For i de Y à z telle autre personne...

Le code actuel :
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
35
36
37
38
39
40
41
42
Private Sub workbook_open()
 
Dim WS As Worksheet
Dim i As Long
Dim OutApp As Object
Dim OutMail As Object
Dim strbody As String
 
Set WS = Sheets("Plan métrologie")
 
For i = 5 To 22
 
If WS.Cells(i, 13) > 0 And WS.Cells(i, 13) < WS.Cells(2, 13) Then
Mbody = "<font style=""color:rgb(0,102,204)"">" & WS.Cells(i, 1) & " " & "(" & _
WS.Cells(i, 3) & ")"
Mbody2 = "<font style=""color:rgb(255,0,0)"">" & WS.Cells(i, 13)
 
Set OutApp = CreateObject("Outlook.Application")
        Set OutMail = OutApp.CreateItem(0)
 
        strbody = "<font size=""3"" face=""Calibri"">" & _
                  "Bonjour,<br>" & _
                  "<br>blabla: " & " " & "<b>" & Mbody & "</b>" & "</font>" & _
                  " à faire avant le  " & "<b>" & Mbody2 & "</b>" & "</font>" & "." & _
                  "<br><br>Cordialement," & _
                  "<br><br>blabbla</font>"
 
With OutMail
             .To = ""
             .CC = ""
             .BCC = ""
             .Subject = "Rappel Métrologie"
             .HTMLBody = strbody
             .Send
 
         End With
 
         Set OutMail = Nothing
         Set OutApp = Nothing
End If
 
End Sub
Bref mon code simpliste n'est plus au niveau... pourriez-vous avoir la gentillesse de m'aider svp ?

Merci d'avance !
Au plaisir,
Elodie