Fórmula de Excel para convertir valores booleanos en {0, 1}


25

¿Cuál es la fórmula de Excel para convertir los valores booleanos {FALSE, TRUE}en {0, 1}?

Suponiendo que haya uno más corto que =IF(cond,1,0).


1
Curiosamente, =a1+a2devolverá la suma numérica de las lógicas, pero =sum(a1:a2)no lo hará. Excel 2013.
Carl Witthoft

Respuestas:


37

Podrías hacerlo fundiendo. La función "int" se redondea al entero más cercano. Si el valor booleano está en A1, la fórmula sería:

=INT(A1)

Similar a esto, =ROUND(A1,0)hace lo mismo en este contexto.
dangowans

O=CEILING(A1,1)
dangowans

Gracias, el elenco era la forma "estándar" que estaba buscando. No me ocurrió probar que, en realidad estaba esperando a ser "más duro" ...
anol

13

--es la forma más común de convertir booleanos en int; es por eso que ves las funciones que tienen --en ellos por esta misma razón. convertirá una matriz de {TRUE, FALSE, FALSE} en {1,0,0} que se pueden usar para multiplicar otras matrices

Ejemplo:

devolviendo las ventas totales de la región que es 9 o menos:

Equipo de ventas
1 $ 20
2 $ 30
11 $ 90

fórmula:

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

Cálculo

=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, ¿eso edita la ayuda?
SeanC

Había visto en la web el --método, pero debo admitir que usar la fórmula INTes mucho más claro y elegante. :)
loved.by.Jesus

7

Multiplique por '1'. ex. Verdadero * 1 = 1 y falso * 1 = 0.

Por ejemplo, si la celda A1 contiene el valor booleano, en una celda vecina, ingrese la fórmula:

=A1*1

Nota: --Verdadero, verdadero + 0 y verdadero / 1 tienen el mismo efecto.


Esto no es necesariamente más legible, pero es "más corto" que la fórmula en la pregunta.
dangowans

Eso es bueno. ¿Pero eso significa que no hay una fórmula integrada para la conversión? ¿Algo como "BOOLVAL" o "BOOLINT"?
anol

Eso es bastante útil, pero estaba buscando una solución más "adecuada" como la de @ dangowans, así que aceptaré su solución. ¡Gracias de cualquier manera!
anol

Ambas respuestas funcionan según el mismo principio: la aplicación de una operación numérica a un valor booleano devolverá una respuesta numérica.
Excellll
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.