NB.SI et NB.SI.ENS n'acceptent que des plages, pas des tableaux de données.

Problème et explication

Si vous n'avez rien compris au titre, regardez ce qui se passe entre ces deux formules :

=NB.SI.ENS(A1:A3;"x")

fonctionne normalement.

Mais, si vous sélectionnez A1:A3 puis appuyez sur F9 pour lancer le calcul, il devient impossible de valider :

=NB.SI.ENS({1;"x";1};"x")

En effet, A1:A3 est une plage, alors que {1;"x";1} est un tableau de données.
La fonction NB.SI.ENS n'accepte pas de tableaux de données comme premier argument.

Cas d’usage problématique

Solution 1

Par exemple :

=NB.SI.ENS(CHOISIRCOLS(A1:B3;2);"x")

ne va pas fonctionner, car CHOISIRCOLS retourne un tableau de données et non une plage.

Mais :

=NB.SI.ENS(INDEX(A1:B3;;2);"x")

va fonctionner, car INDEX retourne la 2? colonne en tant que plage.

Autre solution

On peut ainsi scinder la formule, ce qui va nous donner ceci :

Pour marque-pages : Permaliens.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *


La période de vérification reCAPTCHA a expiré. Veuillez recharger la page.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur la façon dont les données de vos commentaires sont traitées.