Sub RELANCERGUL()
Dim dlig&, lig&: dlig = Cells(Rows.Count, 1).End(3).Row: If lig = 2 Then Exit Sub
Dim Nom$, Mail$, DateCde As Range, NumDev$, MntDev As Currency
For lig = 3 To dlig
With Cells(lig, 1)
Nom = .Value
If Nom <> "" And .Interior.Color = 65535 Then 'client / fond jaune seulement
MntDev = Val(Replace$(.Offset(, 4), ",", ".")) 'montant devis
If MntDev <> 0 Then
Set DateCde = .Offset(, 2) 'date commande
If Not IsEmpty(DateCde) Then 'ligne client ignorée si cellule date vide
If IsDate(.Offset(, 2)) Then 'ligne client ignorée si date non valide
Mail = .Offset(, 1): NumDev = .Offset(, 3) 'email client & n° devis
If Mail <> "" And NumDev <> "" Then 'ok si y'a un mail et un n° devis
With LeMail.CreateItem(olMailItem)
.Subject = "RELANCE DEVIS " + C.Offset(, 4).Value
.Recipients.Add C.Offset(, 3).Value
.Body = "Bonjour,"
.Body = .Body & "Vous trouverez ci-joint notre devis de régularisation ." & vbCrLf
.Body = .Body & " Cordialement SOREF -MP Mr Charrier J." & vbCrLf
.Display 'ici, remplacer MsgBox par code VBA pour l'envoi d'un mail + en PJ
'devis du dossier PC ; ça sera fait que pour les clients en jaune,
'dont les infos adéquates ont été indiquées.
'le code VBA pourra bien sûr utiliser tous les éléments du MsgBox :
'Nom ; Mail ; DateCde ; NumDev ; MntDev.
MsgBox Nom & " " & Mail & " " & DateCde & " " & NumDev _
& " " & Format(MntDev, "# ##0.00 €")
End With
End If
End If
End If
End If
End If
End With
Next lig
End Sub