Fórmula de Excel: compruebe si una celda contiene uno de varios valores pero excluye otros valores
Suponiendo que hay dos listas de valores, desea verificar si la celda B3 contiene uno de los valores en el rango E3: E5, pero al mismo tiempo, no contiene valores de nadie en el rango F3: F4 como se muestra a continuación. Este tutorial proporcionará una fórmula para manejar rápidamente esta tarea en Excel y explicará los argumentos de la fórmula.
Fórmula genérica:
=(SUMPRODUCT(--ISNUMBER(SEARCH(include,text)))>0) *(SUMPRODUCT(--ISNUMBER(SEARCH(exclude,text)))=0) |
Argumentos
Text: the text string you want to check. |
Include: the values you want to check if argument text contains. |
Exclude: the values you want to check if argument text does not contain. |
Valor devuelto:
La fórmula devuelve 1 o 0. Cuando la celda contiene uno de los valores que deben incluirse y no contiene ningún valor que deba excluirse, devuelve 1 o 0. Esta fórmula, 1 y 0 se manejan como valores lógicos. Verdadero y falso.
Cómo funciona esta fórmula
Supongamos que desea verificar si la celda B3 contiene uno de los valores en el rango E3: E5, pero excluye simultáneamente los valores en el rango F3: F4, utilice la siguiente fórmula
=(SUMPRODUCT(--ISNUMBER(SEARCH($E$3:$E$5,B3)))>0)*(SUMPRODUCT(--ISNUMBER(SEARCH($F$3:$F$4,B3)))=0) |
Prensa Participar clave para obtener el resultado de la comprobación.
Explicación
Parte 1: (SUMPRODUCT(--ISNUMBER(SEARCH($E$3:$E$5,B3)))>0) comprueba si la celda contiene valores en E3: E5
BUSCAR función: la función BÚSQUEDA devuelve la posición del primer carácter de la cadena de texto dentro de otra, si la función BÚSQUEDA encuentra el texto coincidente, devuelve la posición relativa, si no, devuelve #VALOR error. Por ejemplo, aquí la fórmula SEARCH($E$3:$E$5,B3) buscará cada valor del rango E3: E5 en la celda B3 y devolverá la ubicación de cada cadena de texto en la celda B3. Devolverá un resultado de matriz como este: {1; 7; 12}.
Función ISNUMBER: la función ISNUMBER devuelve VERDADERO cuando una celda es un número. Entonces ISNUMBER(SEARCH($E$3:$E$5,B3)) devolverá el resultado de la matriz como {verdadero, verdadero, verdadero} ya que la función de BÚSQUEDA encuentra 3 números.
--ISNUMBER(SEARCH($E$3:$E$5,B3)) convierte el valor VERDADERO en 1 y convierte el valor FALSO en 0, por lo que esta fórmula cambia el resultado de la matriz a {1; 1; 1}.
SUMPRODUCT función: se utiliza para multiplicar rangos o sumar matrices y devuelve la suma de productos. los SUMPRODUCT(--ISNUMBER(SEARCH($E$3:$E$5,B3))) devuelve 1 + 1 + 1 = 3.
Por fin, compare la fórmula de la izquierda SUMPRODUCT(--ISNUMBER(SEARCH($E$3:$E$5,B3))) y 0, siempre que el resultado de la fórmula de la izquierda sea mayor que 0, el resultado será VERDADERO o devolverá FALSO. Aquí devuelve VERDADERO.
Parte 2: (SUMPRODUCT(--ISNUMBER(SEARCH($F$3:$F$4,B3)))=0) comprueba si la celda no contiene valores en F3: F4
La fórmula BÚSQUEDA ($ F $ 3: $ F $ 4, B3) buscará cada valor en el rango E3: E5 en la celda B3 y devolverá la ubicación de cada cadena de texto en la celda B3. Devolverá un resultado de matriz como este: {# ¡VALOR!; # ¡VALOR!}.
ISNUMBER(SEARCH($F$3:$F$4,B3)) devolverá el resultado de la matriz como {falso; falso} ya que la función BUSCAR encuentra el número 0.
--ISNUMBER(SEARCH($F$3:$F$4,B3)) convierte el valor VERDADERO en 1 y convierte el valor FALSO en 0, por lo que esta fórmula cambia el resultado de la matriz a {0; 0}.
SUMPRODUCT función: se utiliza para multiplicar rangos o sumar matrices y devuelve la suma de productos. los SUMPRODUCT(--ISNUMBER(SEARCH($F$3:$F$4,B3))) devuelve 0 + 0 = 0.
Por fin, compare la fórmula de la izquierda SUMPRODUCT(--ISNUMBER(SEARCH($F$3:$F$4,B3))) y 0, siempre que el resultado de la fórmula de la izquierda sea igual a 0, el resultado devolverá VERDADERO o devolverá FALSO. Aquí devuelve VERDADERO.
Parte 3: Varias dos fórmulas
=(SUMPRODUCT(--ISNUMBER(SEARCH($E$3:$E$5,B3)))>0)*(SUMPRODUCT(--ISNUMBER(SEARCH($F$3:$F$4,B3)))=0)
=TRUE*TRUE
=1
Esta fórmula, 1 y 0 se manejan como valores lógicos VERDADERO y FALSO.
Archivo de muestra
Haga clic para descargar el archivo de muestra
Fórmulas relativas
- Verifica si una celda contiene un texto específico
Para verificar si una celda contiene algunos textos en el rango A pero no contiene los textos en el rango B, puede usar una fórmula de matriz que combine la función COUNT, SEARCH y AND en Excel - Compruebe si la celda contiene una de muchas cosas
Este tutorial proporciona una fórmula para verificar si una celda contiene uno de varios valores en Excel y explica los argumentos en la fórmula y cómo funciona la fórmula. - Compruebe si la celda contiene una de las cosas
Supongamos que en Excel, hay una lista de valores en la columna E, desea verificar si las celdas de la columna B contienen todos los valores en la columna E y devuelven VERDADERO o FALSO. - Compruebe si la celda contiene un número
A veces, es posible que desee verificar si una celda contiene caracteres numéricos. Este tutorial proporciona una fórmula que devolverá VERDADERO si la celda contiene un número, FALSO si la celda no contiene un número.
Las mejores herramientas de productividad de oficina
Kutools para Excel: te ayuda a destacar entre la multitud
Kutools para Excel cuenta con más de 300 funciones, Garantizar que lo que necesita está a sólo un clic de distancia...
Ficha Office: habilite la lectura y edición con pestañas en Microsoft Office (incluya Excel)
- ¡Un segundo para cambiar entre docenas de documentos abiertos!
- Reduzca cientos de clics del mouse para usted todos los días, diga adiós a la mano del mouse.
- Aumenta su productividad en un 50% al ver y editar varios documentos.
- Trae pestañas eficientes a Office (incluido Excel), al igual que Chrome, Edge y Firefox.