Re : Comptage matriciel conditionné
Bonjour
La fonction NB.SI n'accepte pas beaucoup de fonction comme paramètre, ce qui pose problème avec la formule SOMME(1/NB.SI(plage;plage)) utilisée pour calculer le nombre d'éléments différents dans la plage considérée, si on doit définir cette plage, par exemple avec des tests.
Dans ton cas, pour le fun, j'ai essayé avec ta proposition, mais sans passer par une colonne intermédiaire, donc en concaténant les colonnes C (date) et D (type de vente) directement dans le NB.SI mais cela ne fonctionne pas. Toi, tu l'a fait en passant par un nom défini dans le gestionnaire de noms, et c'est OK. Toujours bon à savoir.
En cherchant, j'ai trouvé une solution sans colonne intermédiaire, en utilisant du DECALER(Table1!A$2...., du EQUIV(....;0) et du EQUIV(....;1) pour définir la plage à considérer (En fait, c'est la même méthode que toi, mais la plage dans la colonne A est définie autrement). Toutefois, cela ne fonctionne que si les colonnes C et D sont parfaitement triées dans l'ordre. C'était le cas pour la colonne C, les dates, mais pas pour la colonne D (Cf. le 24/08, dans ton fichier initial). Dans celle-ci, il faut absolument que les types, pour une même date, soient indiqués dans l'ordre, Type1, type2, Type3 et ainsi de suite. On peut faire ça automatiquement par le tri dans l'onglet "Données".
@ plus
P.S 1 : On peut remplacer le SOMME à valider en matriciel (Ctrl+maj tempo+entrer) par un SOMMEPROD, à valider simplement avec entrer.
P.S 2 : Ce qui serait intéressant, c'est d'avoir la formule
valable même si les dates et les types de vente sont données sans le désordre...