formule abec SI

Bonjour,
Dans Calc j'ai une colonne A avec une série de données numériques, avec des valeurs entre 0 et 10.
Dans une colonne B je veux regrouper les données de manière que toutes les entrées affichent un 0 pour toutes les entrées de la colonne A sous 8 et 1 au-dessus.
Dans une colonne C je veux regrouper les données de manière que toutes les entrées affichent un 0 pour toutes les entrées de la colonne A au-dessous de 3 et 1 au-dessus.

J'utilise la fonction SI:
B2=SI (A2>7;1)
C2=SI (A2<3;1)

Le résultat ne donnait pas complètement satisfaction.

La première colonne donne des résultats 0 et 1.
La deuxième colonne donne des résultats FAUX et VRAI.

Après de multiples tentatives à percer l’énigme, en effaçant le formatage direct, j'ai trouvé la bonne solution.

C'est un peu surprenant d'avoir des résultats si différents pour une même formule.

Cordialement
ftr

bonjour,

le problème FAUX/VRAI est uniquement sur la colonne qui était très
probablement au format autre que "standard" (probablement le format
"boléen").

Yves

Bonjour,

en effet, même constat.
J'ai d'ailleurs eu FAUX/VRAI dans la cellule B2 jusqu'à l'effacement du formatage direct.
Je suis aussi étonné d'avoir un formatage direct, alors je n'ai rien appliqué.

S'il s'agit d'obtenir un comptage, une méthode directe, avec les données en A2:A11
=NB.SI(A2:A11;">7")
=NB.SI(A2:A11;"<3")

LC

Bonjour,

En fait, il me semble que les formules sont incomplètes. La fonction Si demande 3 paramètres SI(Condition; Action si vrai; Action si faux). Sinon elle renvoie des "Booléens" (Vrai ou Faux)
Ce qui donnera, par exemple, SI(A2>7:1;0)

Bonne journée

Christian

erreur de frappe. lire SI(A2>7;1;0)

Je la 26/07/2017 07:31, C Fourcroy skribis :

Bonjour,

Avec le format Standard, Calc essaie de deviner comment au mieux afficher la valeur. Si la valeur est très grande ou très petite, par exemple il prendra une notation scientifique. Si c'est une formule utilisant des cellules formatées en date ou monétaire, alors Calc appliquera ce format.
Dans ton cas, les cellules B2 et C2 ne renvoie pas apparemment pas la même chose. Tu n'as pas donné ta valeur de A2, mais je parierais pour 8, 9 ou 10. En effet, B2 a renvoyé la valeur 1. En format Standard, cela s'est donc affiché comme un entier "1". Par contre, en C2, tu n'as pas prévu de valeur à renvoyer. Donc la formule renvoie "FAUX", ce qui correspond à une valeur nulle, mais avec le format Standard, Calc a décidé que le format booléen était + adapté qu'un format d'entier.
Ensuite, en recopiant les formules vers le bas, les formats des cellules B2 et C2 se sont propagés : entier dans la colonne B, booléen dans la colonne C. Si tu avais prévu de renvoyer "0" en cas de test non valide, alors Calc aurait choisi le format entier pour les 2 colonnes.

A+

Laurent BP

Bonjour,

La nouvelle colonne a été créée par Insérer Colonne. Donc c'est bizarre si elle est du format booléen.
J'avais appris que si l'on ne met pas la dernière condition dans une formule avec deux conditions elle est par défaut 0. Donc, ceci semble faux.
Dans ce cas il serait utile de mentionner dans l'aide qu'il faut toujours remplir la troisième condition pour éviter ce genre de "malentendu".

Bonne journée,
ftr

Bonsoir,

Bonjour,
Dans Calc j'ai une colonne A avec une série de données numériques, avec
des valeurs entre 0 et 10.
Dans une colonne B je veux regrouper les données de manière que toutes
les entrées affichent un 0 pour toutes les entrées de la colonne A sous
8 et 1 au-dessus.
Dans une colonne C je veux regrouper les données de manière que toutes
les entrées affichent un 0 pour toutes les entrées de la colonne A
au-dessous de 3 et 1 au-dessus.

J'utilise la fonction SI:
B2=SI (A2>7;1)
C2=SI (A2<3;1)

Le résultat ne donnait pas complètement satisfaction.

La première colonne donne des résultats 0 et 1.
La deuxième colonne donne des résultats FAUX et VRAI.

Après de multiples tentatives à percer l’énigme, en effaçant le
formatage direct, j'ai trouvé la bonne solution.

C'est un peu surprenant d'avoir des résultats si différents pour une
même formule.

D'autres ont répondu pour la syntaxe de SI() (qui accepte quand même que la <réponse si faux> soit absente ; dans votre cas c'est pas glop).

Dans le cas d'un test logique (ce qui semble être le cas ici) on peut très bien se passer de SI() ce qui simplifie les formules.

Les deux formules s'écrivent alors :
B2: = (A2 > 7)
C2: = (A2 < 3)
bien plus simples alors à écrire et à lire :slight_smile:

B2 = A2>7
se lit comme B2 reçoit le résultat de la comparaison de A2 et de 7, soit VRAI ou FAUX selon le contenu de A7.

Les résultats renvoyés par ces formules seront donc les valeurs booléennes VRAI ou FAUX. Ceci dit, si plus loin dans l'exploitation on a besoin des valeurs numériques 0 ou 1, il suffira d'utiliser les booléens comme des nombres [1] : FAUX vaut 0 et VRAI vaut -1 (avec ABS() on ramène à 1).

[1] Un tableur reconnaît trois et *seulement* trois types de données dans ses cellules :
-- des *nombres* (valeurs numériques explicites, dates et heures, valeurs booléennes)
-- du *texte* (tout ce qui n'est pas numérique)
-- des *formules* (commencent par "=")
et RIEN d'autre.
Ensuite, tout n'est qu'une question de mise en forme, c'est-à-dire *l'apparence* qu'on donne aux choses.

Bien cordialement,