Fórmula de Excel: celda es igual a una de muchas cosas -

Tabla de contenido

Fórmula genérica

=SUMPRODUCT(--(A1=things))>0

Resumen

Si desea probar una celda para ver si es igual a una de varias cosas, puede hacerlo con una fórmula que use la función SUMPRODUCTO.

Contexto

Digamos que tiene una lista de cadenas de texto en el rango B5: B11 y desea probar cada celda con otra lista de cosas en el rango E5: E9. En otras palabras, para cada celda en B5: B11, desea saber: ¿esta celda es igual a alguna de las cosas en E5: E9?

Puede comenzar a construir una fórmula grande basada en declaraciones IF anidadas, pero una fórmula de matriz basada en SUMPRODUCT es un enfoque más simple y limpio.

Solución

La solución es crear una fórmula que pruebe múltiples valores y devuelva una lista de valores VERDADEROS / FALSOS. Una vez que tengamos eso, podemos procesar esa lista (una matriz, en realidad) con SUMPRODUCT.

La fórmula que estamos usando se ve así:

=SUMPRODUCT(--(B5=things))>0

Explicación

La clave es este fragmento:

--(B5=things)

que simplemente compara el valor en B5 con cada valor en el rango nombrado "cosas". Debido a que estamos comparando B5 con una matriz (es decir, el rango denominado "cosas", E5: E11), el resultado será una matriz de valores VERDADERO / FALSO como este:

(VERDADERO; FALSO; FALSO; FALSO; FALSO)

Si tenemos incluso un VERDADERO en la matriz, sabemos que B5 es igual al menos a una cosa en la lista, por lo que, para forzar los valores VERDADERO / FALSO a 1 y 0, usamos un doble negativo (-, también llamado doble unario). Después de esta coacción, tenemos esto:

(1; 0; 0; 0; 0)

Ahora procesamos el resultado con SUMPRODUCT, que sumará los elementos de la matriz. Si obtenemos un resultado distinto de cero, tenemos al menos una coincidencia, por lo que usamos> 1 para forzar un resultado final de VERDADERO o FALSO.

Con una lista codificada

No es necesario que uses un rango para tu lista de cosas. Si solo está buscando una pequeña cantidad de cosas, puede usar una lista en formato de matriz, que se denomina constante de matriz. Por ejemplo, si solo está buscando los colores rojo, azul y verde, puede usar ("rojo", "azul", "verde") así:

--(B5=("red","blue","green"))

Lidiar con espacios extra

Si las celdas que está probando contienen espacio adicional, no coincidirán correctamente. Para quitar todo el espacio adicional, puede modificar la fórmula para usar la función TRIM así:

=SUMPRODUCT(--(TRIM(A1)=things))>0

Articulos interesantes...