Formule Excel pour convertir les valeurs booléennes en {0, 1}


25

Quelle est la formule Excel pour convertir les valeurs booléennes {FALSE, TRUE}en {0, 1}?

Supposons qu'il y en ait un plus court que =IF(cond,1,0).


1
Fait intéressant, =a1+a2renverra la somme numérique des logiques, mais =sum(a1:a2)ne le fera pas. Excel 2013.
— Carl Witthoft

Réponses:


37

Vous pouvez le faire en lançant. La fonction "int" est arrondie à l'entier le plus proche. Si la valeur booléenne est en A1, la formule serait:

=INT(A1)

Similaire à cela, =ROUND(A1,0)fait la même chose dans ce contexte.
— dangowans

Ou=CEILING(A1,1)
— dangowans

Merci, le casting était la façon "standard" que je recherchais. Il ne m'est pas
— venu à l'idée

13

--est le moyen le plus courant de convertir un booléen en int - c'est pourquoi vous voyez des fonctions qui ont le --pour elles pour cette raison. il transformera un tableau de {TRUE, FALSE, FALSE} en {1,0,0} qui peut être utilisé pour multiplier d'autres tableaux

Exemple:

renvoyer le total des ventes de la région 9 ou moins:

Ventes d'équipe
1 20 $
2 30 $
11 90 $

formule:

=SUMPRODUCT(--(A2:A4<=9),B2:B4)

Calcul

=SUMPRODUCT(--(True,True,False),($20,$30,$90))
=SUMPRODUCT((1,1,0),($20,$30,$90))
=1 * $20 + 1 * $30 + 0 * $90
=$20 + $30 + $0
=$50

@ fixer1234, Est-ce que cela vous aide?
— SeanC

J'avais vu sur le web la --méthode, mais je dois admettre que l'utilisation de la formule INTest beaucoup plus claire et élégante. :)
— loves.by.Jesus

7

Multipliez-le par «1». ex. Vrai * 1 = 1 et Faux * 1 = 0.

Par exemple, si la cellule A1 contient la valeur booléenne, dans une cellule voisine, entrez la formule:

=A1*1

Remarque: --True, True + 0 et True / 1 ont le même effet.


Ce n'est pas nécessairement plus lisible, mais c'est "plus court" que la formule dans la question.
— dangowans

C'est bien. Mais cela signifie-t-il qu'il n'y a pas de formule intégrée pour la conversion? Quelque chose comme "BOOLVAL" ou "BOOLINT"?
— anol

C'est assez utile, mais je cherchais une solution plus "appropriée" comme celle de @ dangowans, donc j'accepte sa solution. Merci quand même!
— anol

Les deux réponses fonctionnent sur le même principe: l'application d'une opération numérique à une valeur booléenne renvoie une réponse numérique.
— Excellll
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.