Sub Essai()
  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
                '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 If
            End If
          End If
        End If
      End If
    End With
  Next lig
End Sub