Hello,
alors voilà ce que je te propose ;
La colonne J remplace la colonne F et fait la différence entre les dates que tu cherches. Pour ça on a besoin de 3 autres colonnes :
-en G on numérote les lots défectueux en recommençant à 1 à chaque fois, seul le 1sera gardé pour la suite
-en H on va chercher la date en colonne E
-en I on va chercher la date en colonne D
Formule matricielle en G2 ;
=SI(SOMMEPROD(--(B2=LotsDef)*1)<>0;1+SI(G1="";0;G1);"")
matricielle en H2 ;
=SI(G2=1;SI(PETITE.VALEUR(SI(ENT(INDIRECT("E"&GRANDE.VALEUR(SI(ESTNUM($G$1:$G1);LIGNE($G$1:$G1));1)+1):E1)>ENT(D2);INDIRECT("E"&GRANDE.VALEUR(SI(ESTNUM($G$1:$G1);LIGNE($G$1:$G1));1)+1):E1);1)>I2;D2;PETITE.VALEUR(SI(ENT(INDIRECT("E"&GRANDE.VALEUR(SI(ESTNUM($G$1:$G1);LIGNE($G$1:$G1));1)+1):E1)>ENT(D2);INDIRECT("E"&GRANDE.VALEUR(SI(ESTNUM($G$1:$G1);LIGNE($G$1:$G1));1)+1):E1);1));"")
matricielle en I2 ;
=SI(G2=1;GRANDE.VALEUR(SI(INDIRECT("D"&PETITE.VALEUR(SI(ESTNUM(G3:G$46)=FAUX;LIGNE(G3:G$46));1)):INDIRECT("D"&PETITE.VALEUR(SI(G3:G$46=1;LIGNE(G3:G$46));1)-1)<INDIRECT("E"&PETITE.VALEUR(SI(ESTNUM(G3:G$46)=FAUX;LIGNE(G3:G$46));1)-1);INDIRECT("D"&PETITE.VALEUR(SI(ESTNUM(G3:G$46)=FAUX;LIGNE(G3:G$46));1)):INDIRECT("D"&PETITE.VALEUR(SI(G3:G$46=1;LIGNE(G3:G$46));1)-1));1);"")
Le G$46 c'est pour déterminer la dernière cellule où chercher puisqu'il y a 46 lignes dans ton fichier mais il faudra bien sûr changer ça pour ton vrai fichier.
non matricielle en J2 ;
=SI(ESTNUM(I2);DATEDIF(H2;I2;"d");"")
Il y a juste pour le dernier lot que ça ne marche pas parce qu'il n'est suivi d'aucun lot non défectueux donc forcément il n'y a aucune ligne où aller chercher les dates, mais il suffit de rajouter une ligne en-dessous.
Le fichier ;