=SI(
($C6+COLONNE()-COLONNE($E$5))>$D6; ... date de la colonne en cours = date début + nbre de colonnes depuis $E pour balayer toutes les dates
""; ... si cette date dépasse la fin de la période donnée en Feuille1 je mets blanc
SIERREUR( ... servira à mettre blanc si pas trouvé, voir ci-dessous
........... ici c'est le coeur de la recherche .............
INDEX('Tableau 2'!$E$6:$E$30; ... je vais rechercher le modif en colonne $E
SOMMEPROD(
LIGNE('Tableau 2'!$A$6:$A$30) ... numéro de la ligne qui va regrouper les conditions qui suivent
*('Tableau 2'!$A$6:$A$30=DROITE("00000000"&'Tableau 1'!$A6;8)) ... condition sur matricule que je force à 8 chiffres = donnera 0 si rien, 1 si ok
*(CNUM('Tableau 2'!$F$6:$F$30)<=($C6+COLONNE()-COLONNE($E$5))) ... condition sur la date de début correspondant au modif Feuille2, CNUM transformera la date texte en vraie date = donnera 0 si rien, 1 si ok
*(CNUM('Tableau 2'!$G$6:$G$30)>=($C6+COLONNE()-COLONNE($E$5)))) ... ... condition sur la date de fin correspondant au modif Feuille2 = donnera 0 si rien, 1 si ok
-LIGNE('Tableau 2'!$E$5)); ... je retranche le n° de la ligne d'en-tête
........... fin du coeur de la recherche .............
"") ... si erreur alors je mets blanc car rien trouvé
)
SOMMEPROD fonctionne comme ceci : SOMMEPROD((matrice des valeurs)*(condition1)*(condition2)...) sachant que condition1, condition2 prennent les valeurs 1 si OK, 0 si notOK