Re,
La formule que j'ai corrigée me semblait plus pratique, c'est tout.
Pour ma part, je crois que j'utilise des formules matricielles quand je ne trouve pas d'autres soultions, assez souvent.
Un formule matricielle calcule sur des plages de cellules,
mais toutes les formules qui calculent sur des plages ne sont pas matricielles.
=SOMME(A1:A8) n'est pas une formule matricielle
Un des avantages des formules matricielles,
c'est que tu peux avoir une formule parfois très courte à la place d'une formule de 2, 3 ou 4 lignes.
Tu peux voir la différence entre
NB.SI(plage;un férie)+NB.SI(plage;un autre férié)+NB.SI(plage;un autre férié)+NB.SI(etc)
et =NB.SI(plage;fériés)
Et toi, tu as de la chance, il te manque un férié.
Mais cette formule =SOMMEPROD(NB.SI(plage;fériés)) donne le même résultat.
Ce n'est pourtant pas une formule matricielle.
Celle-ci non plus n'est pas matricielle
=SOMMEPROD(NB.SI(plage;horaires_matin)*(duree_matin))
Celle-ci est matricielle
=SOMMEPROD(SI((($B14:$AF14)=horaires_matin)*(($B7:$AF7)=1);duree_matin))
Un inconvénient, c'est le mode de validation avec les 3 touches.
Si tu oublies, tu as un signal d'erreur ou un résultat faux.
Un autre inconvénient : en grand nombre, ces formules ralentissent la vitesse de calcul.
Mais si l'on met une formule matricielle courte à la place d'une formule classique longue, ça peut compenser.
Si l'on met une matricielle pour remplcer 36 autres, ça compense aussi.
Un autre avantage : "écrire" la même formule dans plusieurs cellules à la fois pour obtenir une série de résultats.
Tu regardes ici :
<http://www.excel-downloads.com/html/French/forum/messages/1_11083_11083.htm>
Le fichier <Gde_valeur_moyenne.xls>
et ici :
<http://www.excel-downloads.com/html/French/forum/messages/1_6322_6322.htm>
Le fichier <PROJETxl.xls>
Tu as plein dautres exemples sur le forum.