¿Existe una función incorporada para verificar si una celda contiene un determinado carácter / subcadena?
Significaría que puede aplicar funciones de texto como Left
/ Right
/ Mid
de manera condicional sin arrojar errores cuando los caracteres de delimitación están ausentes.
excel
excel-formula
geoteoria
fuente
fuente
CONTAINS("Text", cell)
función.FIND()
en lugar deSEARCH()
,
lugar de;
. Después de cambiar la fórmula proporcionada a=ISNUMBER(SEARCH("Some Text"; A3))
funcionó. ¡Gracias!La siguiente fórmula determina si el texto "VERIFICAR" aparece en la celda C10. Si no lo hace, el resultado está en blanco. Si lo hace, el resultado es el trabajo "COMPROBAR".
fuente
Esta fórmula me parece más intuitiva:
esto devuelve VERDADERO si "SomeText" está contenido en A1.
Las fórmulas IsNumber / Search e IsError / Find mencionadas en las otras respuestas ciertamente funcionan, pero siempre encuentro que necesito mirar la ayuda o experimentar en Excel con demasiada frecuencia con esas.
fuente
Para aquellos que deseen hacer esto usando una sola función dentro de la instrucción IF, uso
para ver si el TEXTO de la subcadena está en la celda A1
[NOTA: TEXT necesita tener asteriscos a su alrededor]
fuente
Echa un vistazo a la
FIND()
función en Excel.Sintaxis:
Devuelve
#VALUE!
si no encuentra la subcadena.fuente
ISNUMBER
esto también funciona, solo para coincidencias entre mayúsculas y minúsculas.Me gusta Rink.Attendant.6 respuesta. De hecho, quiero verificar si hay varias cadenas y lo hice de esta manera:
Primero, la situación: nombres que pueden ser constructores de casas o nombres de comunidades y necesito agrupar a los constructores como un solo grupo. Para hacer esto, estoy buscando la palabra "constructor" o "construcción", etc. Entonces -
fuente
=OR(COUNTIF(A1,"*builder*"),COUNTIF(A1,"*construction*"))
?COUNTIFS
:COUNTIFS(A1,"*builder*",A1,"*construction*")
Es una vieja pregunta, pero creo que sigue siendo válida.
Como no hay una función CONTAINS, ¿por qué no declararla en VBA? El siguiente código utiliza la función VBA Instr, que busca una subcadena en una cadena. Devuelve 0 cuando no se encuentra la cadena.
fuente
Esta es una pregunta antigua, pero una solución para aquellos que usan Excel 2016 o más reciente es que puede eliminar la necesidad de estructuras anidadas si usa el nuevo
IFS( condition1, return1 [,condition2, return2] ...)
condicional.Lo he formateado para que sea visualmente más claro sobre cómo usarlo para el caso de esta pregunta:
Como
SEARCH
devuelve un error si no se encuentra una cadena, la envolví con unISERROR(...)=FALSE
para verificar la verdad y luego devolver el valor deseado. Sería genial siSEARCH
devuelve 0 en lugar de un error de legibilidad, pero desafortunadamente así es como funciona.Otra nota importante es que
IFS
devolverá la coincidencia que encuentre primero y, por lo tanto, ordenar es importante. Por ejemplo, si mis cadenas eranSurf, Surfing, Surfs
como lasString1,String2,String3
anteriores y la cadena de mis celdasSurfing
coincidiría en el primer término en lugar del segundo debido a que la subcadena esSurf
. Por lo tanto, los denominadores comunes deben ser los últimos en la lista. MiIFS
tendría que ser ordenadoSurfing, Surfs, Surf
para que funcione correctamente (el intercambioSurfing
ySurfs
también funcionaría en este sencillo ejemplo), peroSurf
tendría que ser el último.fuente
Aquí está la fórmula que estoy usando
=IF( ISNUMBER(FIND(".",A1)), LEN(A1) - FIND(".",A1), 0 )
fuente
IFERROR(LEN(A1) - FIND(".", A1), 0)