Bonjour
@CVDK
Effectivement c'est beaucoup plus clair comme cela !
@James007 (Bonjour mon cher)
Je trouve que dans ta formule très sympathique certes, tu as utilisé un marteau de coffreur pour un clou de tapissier !
Il y a donc (beaucoup) plus simple :
=SIERREUR( SI( INDEX( L6C16:L10C22 ; JOURSEM( L12C ; 2); EQUIV( LC1 ; L5C16:L5C22 ; 0))="PAS" ; "PAS" ; "") ; "")
ou
=SIERREUR(SI(INDEX($P$6:$V$10;JOURSEM(B$12;2);EQUIV($A17;$P$5:$V$5;0))="PAS";"PAS";"");"") en notation bataille navale
Explications :
Dans le tableau (appelons-le REF) situé en P5:AB10 (celui qui sert de référence aux affichages) il y a les jours de la semaine (de travail de Lun à Ven)
Dans l'autre tableau (appelons-le MAJ) à/c de la ligne 12 il y a justement en ligne 12 des dates
1) J'utilise INDEX avec pour matrice (1er paramètre) le tableau REF
2) Je récupère le numéro du jour de la semaine de la date de la ligne 12 du tableau MAJ
=> JourSem avec le 2ème paramètre à la valeur 2 pour avoir une codification Lun=1, Mar=2...)
=> Nous avons ainsi le numéro de ligne pour la fonction INDEX
3) Avec la fonction EQUIV, je recherche le libellé de la colonne A du tableau MAJ dans les entêtes de colonne du tableau REF
!! Attention les libelles (colonne A de MAJ et ligne 5 de REF) doivent être absolument identiques !!
4) Comme la fonction INDEX renvoie une valeur, la fonction SI est juste là pour dire
SI cette recherche (issue de la fonction INDEX) donne PAS
ALORS nous écrivons PAS
SINON nous n'écrivons rien
5) La fonction SIERREUR est quant à elle utilisée pour palier au fait que le tableau MAJ est décrit sur les 7 jours de la semaine alors que dans le tableau REF nous n'avons que les 5 premiers...
La fonction INDEX renvoie une erreur si nous sommes sur SAM ou DIM donc nous avons
SI une ERREUR sur le Résultat de Index
ALORS nous n'écrivons rien