Désolée du retard
Voici comment Lister tous les produits qui expirent dans 3 mois dans une msgbox.
Il faut tout de même noter que les MsgBox ont un nombre limité de caractères
ce qui veut dire que si tu as 700 lignes et que 40 produits se périment au même moment tu est dans l'embarras
Solution :
Utilise un Userform et tu y mets un grand Label pour récupérer toutes les alerte.
Copies ce code et colles-le dans le module 1 et essaie, si cela te convient dit-le nous.
Sub Alerte()
'Alerte sur les dates d'expiration des dossiers des Véhicules
'************
'By Nathalie Charette 2019
'1- Déclaration de mes variables
'********************************************************************
Dim j As Integer
Dim CELL As Range, Mes As String, DerLig As Long
'********************************************************************
'2- Début de ma procédure
With ThisWorkbook.Worksheets("Med PB") ' Le classeur où sont les données de dates d'expiration
DerLig = .Range("C4").End(xlDown).Row
For Each CELL In .Range("C4:C" & DerLig).Cells
If DateDiff("m", Date, CDate(CELL.Value)) = 3 Then
Mes = Mes & Chr(149) & " " & CELL.Offset(, -2).Value & Space(1) & CELL.Offset(, -1).Value & _
" Expire dans " & DateDiff("m", Date, CDate(CELL.Value)) & " mois" & Chr(13) & vbCr
End If
Next CELL
MsgBox "ALERTE PEREMPTION AU " & Format(Now, "dd/mm/yyyy") & Chr(10) & Chr(10) & Chr(10) _
& Chr(13) & Mes & vbCrLf & vbclrf, vbCritical, "Alert"
End With
End Sub