Numbers : cellule vide si total = 0 avec NB.SIS

Voli

Nouveau membre
7 Avril 2021
7
0
51
Bonjour,

J'ai deux tableaux. Le tableau 1 me permet de rentrer les personnes présentes sur une semaine (J0 À J6). Le tableau 2 me sert à faire la synthèse pour savoir qui était présent de J0 à J6.

Donc dans le tableau 1, colonne D, les prénoms des 3 personnes qui reviennent sur plusieurs rangs. Dans la colonne E, les jours de présence (J0 à J6).
Dans le tableau 2, colonne A, le prénom des 3 personnes, dans la colonne D : "J0", dans la colonne E : "J1", etc.

Jusqu'à là, tout va très bien avec la fonction "NB.SIS" dans le tableau 2. La chose que je n'arrive pas à faire dans ce tableau 2, c'est de laisser, par exemple la cellule A4 vide lorsque le résultat donne zéro.

Voici la fonction en question pour "J0" : NB.SIS(PRÉNOM;A4;'J0 À J6 ';"=J0") dont je n'arrive pas à imbriquer une fonction me permettant de laisser la cellule vide si "0". J'ai vu que pour laisser une formule vide on peut le faire avec la fonction "SI" et deux guillemets, mais je n'arrive pas à l'inclure dans ma formule.
J'ai beau essayer, je n'y arrive pas. Je viens de me mettre à Numbers et je suis archi newbie dans les fonctions. Si quelqu'un pouvait m'apporter son aide, cela serait super sympa :)
 

zeltron54

Membre d’élite
29 Mars 2008
2 137
335
Lorraine
Bonjour,

Beaucoup de mal a suivre tes explications, mais bon.

Si ta formule : NB.SIS(PRÉNOM;A4;'J0 À J6 ';"=J0") fonctionne et que tu veuilles qui si le résultat de cette formule = 0 , ne rien afficher, alors le formule devient:

SI(NB.SIS(PRÉNOM;A4;'J0 À J6 ';"=J0")=0; "";NB.SIS(PRÉNOM;A4;'J0 À J6 ';"=J0"))

principe: si (ton calcul = 0 ; alors j"affiche rien ; sinon affiche ton calcul)
 
  • J’aime
Réactions: baron

Voli

Nouveau membre
7 Avril 2021
7
0
51
Hello Zeltron54,

Merci beaucoup pour ta réponse. Moi qui pensais avoir été clair
Pour être plus clair, enfin je l'espère !

Dans mon tableau A, par exemple (colonne D : Prénoms / colonne E : J0 à J2)
  • dans la colonne D3, j'ai "Alexia" et dans la colonne E3 : "J0"
  • dans la colonne D4, j'ai "Alex" et dans la colonne E4 : "J1"
  • dans la colonne D5, de nouveau "Alex" et dans la colonne E5 : "J2"

Dans mon tableau B, la synthèse de ces éléments (colonne A : Prénoms / Colonne D : "J0" / colonne E : "J1"/ colonne F : "J2".
  • dans la colonne A4 : "Alexia" avec 1 en colonne D4 ("J0")
  • dans la colonne A5 : "Alex" avec 1 en colonne E5 ("J1") et 1 en colonne F5 (J2)


Donc dans mon tableau B, je veux pour "Alexia" lorsque dans la cellule en E4 qui correspond à la fonction : NB.SIS(PRÉNOM;A4;'J0 À J6 ';"=J1"), la cellule soit vide plutôt que "0".

La formule que tu m'as donnée gentiment proposée ne marche pas (erreur de syntaxe).

J'espère que mes compléments d'informations ne vont pas te faire mal à la tête.

PS : Voici le visuel. Je viens de voir qu'on peut joindre un fichier, cela sera sûrement plus explicite.
C538ED49-90F8-413B-A97A-AD62C77B81CA.jpeg
 

zeltron54

Membre d’élite
29 Mars 2008
2 137
335
Lorraine
Bonjour,
en regardant tes copie d'écran, la formule qui doit être en E4 est :

Bloc de code:
SI(NB.SIS(Tableau 1::$PRENOM;$A;$J0 A J6;"=J1")=0;"";NB.SIS(Tableau 1::$PRENOM;$A;$J0 A J6;"=J1"))
 

zeltron54

Membre d’élite
29 Mars 2008
2 137
335
Lorraine
J'ai oublié de préciser qu' il faut cliquer sur le petit triangle pour cocher "conserver la colonne" afin de pouvoir recopier la formule en la glissant avec le petit point jaune.
tu devrait obtenir : en D4
Bloc de code:
SI(NB.SIS(Tableau 1::$PRENOM;$A;$J0 A J6;"=J0")=0;"";NB.SIS(Tableau 1::$PRENOM;$A;$J0 A J6;"=J0"))
en F4
Bloc de code:
SI(NB.SIS(Tableau 1::$PRENOM;$A;$J0 A J6;"=J2")=0;"";NB.SIS(Tableau 1::$PRENOM;$A;$J0 A J6;"=J2"))
en G4
Bloc de code:
SI(NB.SIS(Tableau 1::$PRENOM;$A;$J0 A J6;"=J3")=0;"";NB.SIS(Tableau 1::$PRENOM;$A;$J0 A J6;"=J3"))

Etc...

Ma copie d'écran

Capture d’écran 2021-04-08 à 17.49.21.png
 
Dernière édition:

Voli

Nouveau membre
7 Avril 2021
7
0
51
Hello Zeltron54,

J'ai vu ton deuxième message, mes pas les suivants, car j'étais appliqué à recopier ta formule sur l'ensemble du tableau.
Comment te dire.... Elle fonctionne à merveille !
Vraiment un très grand merci à toi. Tu as égayé ma soirée. Que c'est beau une formule bien faite ! Encore merci.

PS : merci pour l'astuce "conserver la colonne". J'avais vu en effet qu’il y avait plusieurs choix, mais je ne mettais pas encore penché dessus, car je ne savais pas quoi cocher exactement. Par contre, je travaille sur iPad Pro, donc pas de point jaune, mais je suppose qu’il doit y avoir quelque chose de similaire. Je chercherai.
 
Dernière édition:

zeltron54

Membre d’élite
29 Mars 2008
2 137
335
Lorraine
Content pour toi !
 
  • J’aime
Réactions: Voli

Voli

Nouveau membre
7 Avril 2021
7
0
51
Hello Zeltron54,

Je reviens vers toi. Je pensais avoir tout saisi pour l'affichage ou non du zéro et pourtant ce n'est pas le cas.
Quand je rentre la fonction SI pour calculer sans qu'apparaissent de zéros, la fonction me dit : N'IMPORTE QUOI ! Essaye encore ! Ce n'est pas faute d'avoir essayé, mais là, je cale. Je ne suis vraiment pas doué
Je n'ai pas réussi à trouver un livre sur Number, le seul que j'ai vu date de 2012.

50C947E8-158D-4B68-A29E-47F62BEEDC2F.jpeg
 

zeltron54

Membre d’élite
29 Mars 2008
2 137
335
Lorraine
Bonjour,
Tu es toujours dans tes 2 tableaux que tu as présenté dans ton post #3 ?
Car la formule devrait être la même hormis le critère de recherche. Donc dans la colonne G ou tu cherches "J3" la formule devient:

Bloc de code:
SI(NB.SIS(Tableau 1::$PRENOM;$A;$J0 A J6;"=J3")=0;"";NB.SIS(Tableau 1::$PRENOM;$A;$J0 A J6;"=J3"))

Par contre dans ton tableau 1 tu as "TOKYO" en prenom ?
 

Voli

Nouveau membre
7 Avril 2021
7
0
51
Encore merci pour ton aide. Je vais de suite la rentrer. Non, Tokyo est une catégorie de mon tableau A. Et non, je ne veux que la somme du tableau B.
 

zeltron54

Membre d’élite
29 Mars 2008
2 137
335
Lorraine
Je ne comprend pas ?

tu veux dans le ligne TOKYO que la cellule te donne la somme des valeurs en dessous ?
si c'est ça la formule à mettre dans D3 sera :
Bloc de code:
SI(SOMME(D4:D10)=0;"";SOMME(D4:D10))
et tu auras la somme de la colonne D

Autre chose dans ta formule au lieu de taper le critère de recherche J0 ou J1 ou J2 etc tu le remplace par la cellule qui le contient.
ce qui te permet de mettre dans la cellule D4 la formule:
Bloc de code:
SI(NB.SIS(Tableau 1::$PRENOM;$PRENOM;$J0 A J6;D$1)=0;"";NB.SIS(Tableau 1::$PRENOM;$PRENOM;$J0 A J6;D$1))

et ensuite de tirer cette formule dans tout ton tableau de D4 à J10.
 
Dernière édition:

Voli

Nouveau membre
7 Avril 2021
7
0
51
Oups, désolé pour la réponse tardive, courses de dernières minutes avant la fermeture des magasins...

Oui pour ta question et merci pour l'astuce. Je m'y recolle.
 

Voli

Nouveau membre
7 Avril 2021
7
0
51
Encore un grand merci. Mon tableau est finalisé (qui est beaucoup plus complexe, tout est relatif, que mon exemple !).

Je n'ai pas encore trouvé ton astuce J0 à J6 pour éviter de les rentrer, car je ne sais pas à quoi correspond dans mon tableau B, une partie de ta fonction "D$1", car mes cellules de la colonne E du tableau A (J0 à J6) sont un "menu local". Quand on est newbie, on est newbie !

Cependant, tout est fonctionnel avec les instructions que tu m'avais communiquées précédemment. Alléluia

Bravo à toi pour comprendre ce que l'on veut faire avec des explications pas toujours claires. Merci de ton temps consacré pour répondre à des questions qui ont certainement déjà été posées et cela dans un temps record .
Je ne sais pas, si tu sais, combien de personnes tu as sauvées de la crise de nerfs
Et hop, une deuxième soirée égayée et surtout sauvée ! Je trinque à ta santé (dommage, que je n'ai pas d'autres choses à faire sur Numbers, car assurément, je t'aurais sollicité ).