Excel Intelligent ?

Jam

XLDnaute Accro
Bijour à tous,

Je viens de noter un truc disons surprenant avec la fonction de feuille NB.SI().

Si des colonnes sont pré-rempli, NB.SI() en tient compte même si la condition n'est pas rempli et que la plage de test est plus importante!
Si j'a 1 colonne remplie sur 10 ligne et si je teste NB.SI() sur 20 lignes, il me renverra par défaut 10, comme si les 10 lignes d'à côté avaient une influence sur la fonction. Bizarre non ? Mais utile aussi dans mon cas.

Un exemple étant beaucoup plus parlant j'ai attaché un petit fichier. [file name=Classeur2_20060505124721.zip size=1419]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur2_20060505124721.zip[/file]

Message édité par: jam, à: 05/05/2006 12:48
 

Pièces jointes

  • Classeur2_20060505124721.zip
    1.4 KB · Affichages: 26

andré

XLDnaute Barbatruc
Salut Jam,

Supprimes les colonnes A et B.
La formule en B1 (ex D1) renvoie toujours 19.

Modifie la plage de recherche en B2:B10
La formule renvoie 9.

Remplace ta condition 'différent de' par '='.
La formule renvoie 0.

Essai d'explication (lol).

La condition est 'différent de VRAI', donc différente de 1.
Comme les cellules sont vides, elles sont différentes de 1.

Logique non ?

Â+
 

chris

XLDnaute Barbatruc
Bonjour

Bizzare effectivement.
La notion de VRAI ne semble pas évaluée comme on le croit.

A part VRAI, quoi que contienne ou ne contienne pas une cellule est considéré comme FAUX.

Donc que compte Excel ?
 

Ti_

Nous a quitté
Repose en paix
Salut
Ceci dit, sélectionnez la plage D2:D20, mettez-lui un quadrillage et revalidez la formule : tout rentre dans l'ordre. Idem si on copie des cellules vides quelque part et qu'on les copie en D2:D20, voire seulement en D13:D20.

Tiens, j'ai testé ça dans XP au boulot (et il m'affichait 11 comme le remarquait probablement Jam), et je viens de le recharger dans Excel 2003, et il m'affiche d'office 19, ce qui est la bonne réponse. Donc mes remarques ci-dessus s'appliquent jusqu'à XP mais pas au-delà semble-t-il...

Mais je pense simplement que ça vient de ton fichier, qui a dû contenir quelque chose en D13:D20 auparavant, qui a conduit à ce résultat aberrant.
 

andré

XLDnaute Barbatruc
Salut l'ami Ti_, à toi aussi chris, et au forum,

Pas tout à fait d'accord.

Petit test supplementaire :
Mettre CNUM devant le critère dans la formule et écrire 1 dans les cellules D2:D20.
La formule renvoie 0.

Une cellule vide est bien différente de VRAI, et une cellule contenant 1 est bien équivalente à VRAI, ou bien je n'y comprends plus rien à la logique d'Excel !
(il faut avouer que je suis belge - lol).

Â+
 

Ti_

Nous a quitté
Repose en paix
En fait André, quand on écrit '=VRAI' dans un NB.SI celui-ci cherche les cellules dans lesquelles il trouve la 'chaîne' VRAI (en toutes lettres si je puis dire) et il ne s'occupe pas des 1 ou d'autre chose.

Quant à ton CNUM, tu l'as libellé ainsi ?

=NB.SI(D2:D20;CNUM('=VRAI'))

Dans ce cas, un petit tour dans l'évaluateur de formules te montre qu'il te retourne 0 (et qu'il te retournera toujours 0) parce que ce CNUM a provoqué une erreur.

Nb : j'ai changé ici le signe différent par =, sinon le message ne veut pas passer dans le forum...
 

Statistiques des forums

Discussions
312 211
Messages
2 086 286
Membres
103 170
dernier inscrit
HASSEN@45