Bonsoir,
ce n'est pas la macro que je t'ai fournie.
pour rappel voici le code et j'ai mis des commentaires
Private Sub Worksheet_Activate()
datedujour = Date
k = 6 'n° de la ligne où écrire le produit périmé
' t est un tableau qui contient la liste des feuilles dont la date à tester est en H9 et la donnée à copier est en A9
t = Array("DBS", _
"DCO", "Etalon Ammonium", "Etalon B1000", "Etalon ETA", "Etalon Lithium", _
"Etalon Nitrate", "Etalon Nitrite 1000 ppm", "Etalon Phosphate", "Etalon Sulfate", _
"Etalons chlorure 1000ppm", "Hydrazine", "pH 10", "pH 7", "pH 9", "QC Ammonium", _
"QC Chlorure", "QC ETA", "QC Lithium", "QC Nitrate", "QC Nitrite", "QC Phosphate", "QC Sulfate")
For Each wsn In t 'pour chaque feuille de t
If Worksheets(wsn).Range("H9").Value = datedujour Then 'on a trouvé un produit périmé. Moi je mettrais <= au lieu de =
Worksheets("Accueil").Range("H" & k).Value = Worksheets(wsn).Range("A9").Value 'on écrit la valeur en colonne "H" sur la ligne k
Worksheets("Accueil").Range("I" & k).Value = wsn 'on écrit le nom en colonne "I" sur la ligne k
k = k + 1 'numéro de ligne suivant sur laquelle écrire le prochain produit périmé s'il y en a un
End If
Next wsn
' t est un tableau qui contient la liste des feuilles dont la date à tester est en E9 et la donnée à copier est en B9
t = Array("ci anions", "ci cations", "aquamate 8000", "genesys", "secoman")
For Each wsn In t 'pour chaque feuille de t
If Worksheets(wsn).Range("E9").Value = datedujour Then
Worksheets("Accueil").Range("H" & k).Value = Worksheets(wsn).Range("B9").Value
Worksheets("Accueil").Range("I" & k).Value = wsn
k = k + 1
End If
Next wsn
End Sub