Compréhension Nb.si

Calvus

XLDnaute Barbatruc
Bonjour,

J'essaie de disséquer des formules en ma possession pour compréhension, et bute déjà sur des choses que je supposais simples.

Quelqu'un pourrait il m'expliquer les résultats obtenus sur le fichier joint ?

La formule est en E5 et copiée vers le bas. J'ai mis à droite les différentes valeurs obtenues lorsque j'entre a b ou c en E1.

Merci.

PS: je ne cherche rien de particulier sur ce fichier, mais à comprendre le fonctionnement de la formule nb.si
 

Calvus

XLDnaute Barbatruc
Re : Compréhension Nb.si

Bonjour à tous, bonjour Philippe,

Merci pour l'envoi de ton fichier, qui fonctionne correctement.
Cependant, j'aimerais ne pas avoir à ajouter de colonne supplémentaire et faire la somme en fonction de la col A et de B.

Par exemple, somme C1:C2 car A2 et B2 sont vides.
Ensuite somme c3:c5 car a4:a5 et b4:b5 vides
Ensuite somme C6
Ensuite somme C7
Etc..

J'ai continué à chercher, et arrive à un résultat presque satisfaisant. Ce que je n'arrive pas à faire, est de restreindre ma formule sur une plage variable.

J'ai testé plusieurs choses, sans y arriver, et pourtant j'ai l'impression de ne pas être loin.
La dernière ligne de formule fonctionne bien, mais modifie les formules antérieures, ce qu'évidemment je ne souhaite pas.

Merci

A+
 

Pièces jointes

  • Nb si6.xls
    14.5 KB · Affichages: 35
  • Nb si6.xls
    14.5 KB · Affichages: 36
  • Nb si6.xls
    14.5 KB · Affichages: 38

david84

XLDnaute Barbatruc
Re : Compréhension Nb.si

Bonjour à tous,
je n'ai pas suivi ce fil (donc je n'ai peut-être pas compris ta demande) mais livre une solution simple répondant à ton dernier fichier exemple, à découvrir si tu ne trouves pas.
Un petit indice, laisser la 1ère ligne vide.
Un 2ème, ne vas pas te compliquer la vie avec nb.si ou sommeprod
Si ce n'est pas ce que tu attends, reviens avec plus d'explications.
A+
 

Pièces jointes

  • Nb si6.xls
    18.5 KB · Affichages: 37
  • Nb si6.xls
    18.5 KB · Affichages: 41
  • Nb si6.xls
    18.5 KB · Affichages: 38

Calvus

XLDnaute Barbatruc
Re : Compréhension Nb.si

Bonjour David,

Merci, mais ça ne fonctionne pas.
L'idée est que la plage est variable, et donc le calcul peut se faire sur une cellule, ou sur 10.
C'est en fonction d'une part de la col A, qui sera une valeur texte, et une date en B.
Exemple somme pour A:A = tutu pour 1/08/10
Puis somme pour A:A = toto pour 1/08/10
somme pour A:A = tutu pour 2/08/10
somme pour A:A = toto pour 2/08/10

Les lignes seront variables, par ex 3 pour le 1er, 5 pour le 2ème, 1 pour le 3ème etc..

Espérant que c'est plus clair.

Meci
 

david84

XLDnaute Barbatruc
Re : Compréhension Nb.si

Re,
je ne comprends pas où tu veux en venir et apparemment je ne suis pas le seul.
Je ne vois pas de tutu ou de toto sur ton fichier.
Je te propose donc simplement de produire un fichier exposant fidèlement ton exemple et où les résultats attendus sont notés manuellement avec quelques mots d'explications permettant de comprendre précisément ta demande et le pourquoi du comment.
Si, d'autre part, tu veux des explications sur une formule précise, présente ta formule avec son exemple pour que l'on y comprenne quelque chose.
A+
A+
 

Calvus

XLDnaute Barbatruc
Re : Compréhension Nb.si

Re,

David, c'est ce que j'avais fait sur mon précédent fichier, mais tu as raison, j'aurais du conserver les même termes dans mon exemple, donc bip, do et bac.

J'ai détaillé le fichier davantage. Ca devrait être plus clair.

Merci

A+
 

Pièces jointes

  • Nb si7.xls
    15 KB · Affichages: 44
  • Nb si7.xls
    15 KB · Affichages: 43
  • Nb si7.xls
    15 KB · Affichages: 42

Calvus

XLDnaute Barbatruc
Re : Compréhension Nb.si

Merci David, c'est ça.

Ceci étant, n'est il pas possible de conserver le résultat sur ma même ligne que la 1ère entrée ?

Cad 1er résultat en e1, 2nd en e3, 3eme en e8, etc...

Merci

PS: complexe ta formule ! ouaouh ! que veut dire le "C" à coté de petite valeur ?
En gros que veut dire la formule quoi ! ;)
 
Dernière édition:

Tibo

XLDnaute Barbatruc
Re : Compréhension Nb.si

Salut Calvus, salut David,

Calvus, le souci principal de ton tableau, c'est qu'on a du mal à comprendre comment il se construit.

En lignes 6 et 7, on a 2 lignes vides consécutives. Le tableau se termine en ligne 12. Mais on ignore s'il peut y avoir à nouveau des lignes vides (et combien ?) après cette ligne 12.

Je suis parti du principe d'une taille maximale du tableau de 50 lignes.

en K1, ça nous donne une formule matricielle :

Code:
=SI(A1="";"";SOMME(DECALER($C1;0;0;SI(NBVAL($B1:$B$50)=1;50;EQUIV(VRAI;
($A2:$A$12<>"");0)))))
Formule matricielle à valider par CTRL + MAJ + ENTREE

à recopier vers le bas

Sinon, ne pas oublier que ce qui semble facile sur papier ne l'est pas forcément sur Excel. Les automatismes que l'on peut avoir devant une telle liste doivent pouvoir être transcrits en terme logiques (tests) sur Excel, et c'est là la partie la moins évidente.

@+
 

david84

XLDnaute Barbatruc
Re : Compréhension Nb.si

Re, salut Tibo,
ci-joint proposition moins compacte, mais qui t'éviterait peut-être le problème de dimensionnement du tableau relevé par Tibo (mais à tester) :
=SI(B1="";"";SI(LIGNE(B1:B1)<MAX(NON(ESTVIDE(B$1:B$20))*LIGNE(B$1:B$20));SOMME(INDIRECT("C"&PETITE.VALEUR(SI(B$1:B$20<>"";LIGNE(B$1:B$20));LIGNES($1:1)-NB.VIDE(B$1:B1))&":C"&PETITE.VALEUR(SI(B$1:B$20<>"";LIGNE(B$1:B$20)-1);LIGNES($1:2)-NB.VIDE(B$1:B1))));SOMME(INDIRECT("C"&MAX(SI(B$1:B$20<>"";LIGNE(B$1:B$20)))&":C"&MAX(NON(ESTVIDE(C$1:C$20))*LIGNE(C$1:C$20))))))
Validation matricielle.
Ceci dit, il doit y avoir plus court.
A+
 

Calvus

XLDnaute Barbatruc
Re : Compréhension Nb.si

Bonjour, bonjour Tibo,

Le tableau se construit au fur et à mesure en fonction des données. La taille est donc aléatoire, et d'une feuille à l'autre, on peut avoir 2 lignes pour la 1ère donnée, 5 pour la 2nde, 1 pour la 3eme et 8 pour la 4eme.
Sur la 2eme feuille, on pourrait avoir 12 lignes pour la 1ere donnée, 1 pour la 2 , 1 pour la 3, 1 pour la 4, 1 pour la 5 et 27 pour la 6.
Etc...
Il n'y a donc aucun moyen de déterminer le nombre de lignes à l'avance.

Mais encore une fois, ta formule fait merveille et répond exactement à ce que je souhaitais.
Je te dirai après usage si un problème survient.
Le seul bémol est le #N/A si sur une ligne col A ou B ne sont pas renseignés, mais c'est pas si mal car ça permet de voir s'il y a des oublis.

Je viens de l'adapter à mon fichier original en modifiant pour un tableau de 300 lignes, et ça marche au poil.

Un grand merci à David dont la formule fonctionne également, mais outre sa longueur, ne permettait pas de se mettre sur la 1ère ligne d'une date donnée. J'imagine qu'il aurait trouvé la solution de toute manière.

Maintenant, yapluka essayer de digérer vos formules, environ 8 ans de boulot...

Merci beaucoup et bravo pour vos compétences.

A+
 

Calvus

XLDnaute Barbatruc
Re : Compréhension Nb.si

Bonjour David,

Nos réponses se sont croisées.

Je vais regarder ta formule.

Merci :)

Ca marche aussi nickel, sans renvoyer de #N/A. Je vais essayer de comprendre (mais j'en doute)
Merci
 
Dernière édition:

david84

XLDnaute Barbatruc
Re : Compréhension Nb.si

Re,
je t'ai placé les 3 formules sur le fichier.
J'ai modifié celle de Tibo en affectant les lignes de la colonne B plutôt qu'à celles de la colonne A. Ainsi, tu n'as plus de N/A qui apparaissent.
J'ai modifié les miennes de façon à ce qu'aucune valeur n'apparaisse si une date est rentrée en colonne B et qu'aucun chiffre correspondant à cette date ne soit rentré en colonne B.
Teste et dis-nous.
A+
 

Pièces jointes

  • Nb si_V2.xls
    73.5 KB · Affichages: 24

Calvus

XLDnaute Barbatruc
Re : Compréhension Nb.si

Re,
J'ai modifié les miennes de façon à ce qu'aucune valeur n'apparaisse si une date est rentrée en colonne B et qu'aucun chiffre correspondant à cette date ne soit rentré en colonne B.

A+

Erreur j'imagine, tu voulais dire ne soit rentré en col C ?

Pour le reste, ça fonctionne nickel. Je n'ai que l'embarras du choix.

Par contre, je n'ai pas compris la différence entre tes 2 formules, mais vu que j'arrive pas à les comprendre, ça doit être normal. :(

Merci beaucoup en tout cas encore une fois.

A+
 

david84

XLDnaute Barbatruc
Re : Compréhension Nb.si

Re,
ma dernière formule encore simplifiée:
si tu veux que les 0 apparaissent :
=SI(B1="";"";SOMME(INDIRECT("C"&MIN(SI(B1:B$50<>"";LIGNE(B1:B$50)))&":C"&MIN(SI(B2:B$50<MAX(NON(ESTVIDE(B1:B$50))*LIGNE(B1:B$50));LIGNE(B2:B$50)+NBVAL(B$1:B$50);LIGNE(B2:B$50)-1)))))

Si tu ne veux pas que les 0 apparaissent :
=SI(OU(B1="";ET(B1<>"";C1=""));"";SOMME(INDIRECT("C"&MIN(SI(B1:B$50<>"";LIGNE(B1:B$50)))&":C"&MIN(SI(B2:B$50<MAX(NON(ESTVIDE(B1:B$50))*LIGNE(B1:B$50));LIGNE(B2:B$50)+NBVAL(B$1:B$50);LIGNE(B2:B$50)-1)))))

Tu peux adapter celle de Tibo (qui est bien plus compacte) de la même manière.

Pour comprendre les formules, décortique-les en sous-parties.
Si tu as besoin d'explications suite à ce travail, pose les questions en conséquence.
A+
 

Statistiques des forums

Discussions
312 428
Messages
2 088 347
Membres
103 821
dernier inscrit
Lorient56