Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
Boostez vos compétences Excel avec notre communauté !
Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force.
Apprenez, échangez, progressez – et tout ça gratuitement !
👉 Inscrivez-vous maintenant !
Bonjour à tous,
J'ai, dans mon fichier, une formule NB.SI qui compte la présence de 5 nombres dans une colonne de 6 nombres.
Je ne comprends pas le résultat:
Je cherche une suite de cinq "0" dans 9 1 0 16 3 4 et le résultat est 32?? (au lieu de 0)
l'* avec NB.SI est bien la condition ET ?
pouvez vous me dire ce qui cloche?
merci et bon AM
si tu avais testé qu'une seule de tes conditions nb.si ..., tu aurais remarqué qu'elle renvoie 2, c'est à dire le nombre de 0 qu'il y a dans ta suite de nombre
comme tu fais ce test 6 fois, 2x2x2x2x2x2 = 2 puissance 6 = 32
CQFD
Bonjour Mutzik, abc,
merci pour vos 2 réponses, il me semblait que l' * faisait une condition ET , qu'il fallait alors avoir les 5 nombres présents dans la suite pour avoir 1
Mon but est de rechercher 5 nombres parmi 6 (quelle que soient leurs positions dans la chaîne)
voir nouveau exemple joint, si les chiffres ne se répètent pas, ça fonctionne très bien?
le viens de réaliser que le résultat est faux quand il y a des doublons ou plus, quand il n'y a que des nombres différents ça fonctionne , peut on rectifier?
merci encore
Re,
la formule est la même, mais tu remarqueras que le résultat est 1, car la combinaison des 5 nombres se retrouve bien une fois dans les 6 nombres
Dans le cas ou il n'y a pas de doublons (nombres tous différents)la formule fonctionne mais je ne sais pas l'adapter pour mon ex au dessus (en gardant la même formule) ?
merci et bon am
ps: je ne cherche pas un nombre particulier (comme le nb de 0 , d'où ta formule) mais l'occurence d'une combinaison de 5 nombres dans 6 nombres quelle que soient leurs positions.
Bonsoir Jean Marie
merci pour ta formule matricielle .
Peux tu me dire pourquoi tu as rajouté la fonction "ligne"?
Dans mes ex au dessus EX2 et EX3, as-tu compris pourquoi la conjonction des nb.si et * donnait un résultat faux si uniquement doublons (autrement la formule fonctionne)
J'aimerais bien savoir le pourquoi de ce résultat faux?
merci à toi et bonne soirée
J'ai essayé ta formule matricielle, j'obtiens toujours 2 quel que soient les nombres?
-j'ai modifié la plage de recherche BO37:BO100
-j'ai modifié la plage des nombres AK1:AO1 (et non2)
faut il modifier ligne?
idem
La première instruction de la formule est le calcul de NB.SI,
Pour représenter la matrice retournée, il suffit de sélectionner la plage H5:M20, et de valider la formule =NB.SI(A2:F2;A5:F20) par les touches Ctrl+Shift+Entrer, tu vas obtenir ceci.
Une valeur 0 dans la colonne H indique que la valeur A2 n'est pas présente dans la ligne 5, 6, ...., 20. Même chose pour la colonne I mais pour la valeur de la cellule B2, etc. (la ligne 4 est du commentaire, que j'ai rajouté)
Avec ces valeurs (0 et 1) il est pas encore possible de savoir si sur la même ligne il se trouve plus de 4 nombres à rechercher.
Continuons le développement, avec la partie
=NB.SI(A2:F2;A5:F20)*LIGNE(A5:A20)
Tu peux voir que maintenant, si le nombre est trouvé la fonction retourne le numéro de la ligne.
Nous pourrions passer à la fonction FREQUENCE qui retourne pour chaque valeur du deuxième argument, le nombre de valeur connue dans la matrice. Sauf que cette formule prend le 0 comme la valeur MIN(A2:F2), il faut donc
contrôler que NB.SI soit égal à 1, c'est ce que fait =SI(NB.SI(A2:F2;A5:F20);LIGNE(A5:F20))
Dans le tableau ci-dessous tu as dans la colonne O le résultat de la matrice de la fonction LIGNE(A5:A20), et dans la colonne Q, e résultat de la fonction
=FREQUENCE(SI(NB.SI(A2:F2;A5:F20);LIGNE(A5:F20));LIGNE(A5:A20))
Re Jean Marie et surtout merci pour cette explication logique.
J'ai essayé de mettre en pratique mais j'ai obtenu #N/A puis toujours 0 ?
ma formule matricielle en AP2 est:
J'ai un peu précisé mon exemple de dessus dans le fichier joint, existe t il une astuce pour éviter ces doublons ou bien je dois abandonner nb.si? Ca m'ennuie car tout mon tableau est construit avec nb.si(mais il n'y a pas ces doublons dans les autres plages)
Encore merci à toi pour ta formule et tes explications , c'est sympa.
Bonsoir Jean Marie,
je vais tenter ta nouvelle formule.
Je viens de faire un fichier "propre et clair" pour te montrer exactement le résultat attendu (j'ai #N/A dans ta formule?)
1--Horizontalement 3 nombres parmi 6 dans une ligne compte pour 1 , donc dans mon exemple résultat 2
2-Verticalement, 4 nombres en "descendant" dans des lignes successives comptent pour 1
pourrais tu avoir la gentillesse de m'installer ta 1ère formule horizontale?
As tu une idée pour transformer cette formule pour le cas vertical? ligne remplacé par colonne dans la formule?
Encore merci pour ton aide précieuse.
bonne soirée
On recommence, on inverse les arguments de la fonction NB.SI, et il faut décomposer la plage de cellule BO36:BT3 en ligne unique, c'est le rôle de la partie DECALER(BO36:BT36;LIGNE(A1:A51)😉 dans la formule ci-dessous.
Petit commentaire, si tu places deux fois le même chiffre dans la plage AK:AP, le résultat ne sera pas bon !
Pour la formule en AO : tes explications sont trop succinctes. Dans ton commentaires 4 nombres parmi 4 verticalement avec un nombre par ligne descendante, que veux-tu dire par 4 verticalement ?
- Navigue sans publicité - Accède à Cléa, notre assistante IA experte Excel... et pas que... - Profite de fonctionnalités exclusives Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel. Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.