Error Excel-Overcoming #VALUE con la función FIND

11

En la celda A1 he ingresado "Apple". En B2 ingreso la fórmula =FIND("Apple",A:A). Sin embargo, sigo recibiendo #VALUEerrores. ¿Alguien puede explicar esto y cómo lo supero?

Gh0sT
fuente
Eche un vistazo a Buscar datos en una tabla de Excel .
rickhg12hs
1
Explique lo que está tratando de lograr para que podamos ayudarlo. FINDse utiliza para ubicar una cadena de texto dentro de un conjunto de texto dado, luego devuelve su posición dentro de la cadena de texto. Es posible que esté utilizando la función incorrecta, dependiendo de lo que esté tratando de hacer.
CharlieRB
Básicamente estoy tratando de buscar una cadena de texto dentro de una columna. La posición del texto dentro de la columna no es fija. ¿Debo estar usando alguna otra función y con FINDqué me estoy equivocando ?
Gh0sT
La función ENCONTRAR funciona si tuviera que ingresar la fórmula en la celda B1 ... ¡extraño!
Gh0sT
1
Normalmente se aplica FINDa una sola celda; si lo usa =FIND("Apple",A:A)en B2Excel, en realidad devuelve una "matriz" de valores ... pero el que ve en la celda será el resultado de la celda de la columna A en la misma fila, por lo que si A2 no contiene "Apple" ¡obtienes #VALUE !, pero en B1 obtienes un número - aún así es mejor usar una sola celda .....
barry houdini

Respuestas:

4

Si desea encontrar la primera celda (fila) en la Columna Aque contiene la palabra "manzana", posiblemente como parte de una palabra más grande (por ejemplo, "manzana" o "compota de manzana") o una oración, use

=MATCH("*apple*", A:A, 0)
Scott
fuente
Y como esto responde la parte que debería usar en su lugar ... Estoy marcando esto como la respuesta ... ¡gracias!
Gh0sT
21

Encuentra miradas en una celda, no en un rango de celdas. El componente de sintaxis dentro de_texto está mirando una cadena particular, pero un rango de celdas no es una cadena. Puede lograr esto con una matriz, pero el enfoque más simple sería crear una columna de buscador; haga una columna al lado de la columna que desea buscar y agregue la fórmula en cada celda adyacente, por lo que en B2 la declaración dentro del texto sería A2.

=FIND("Apple",A1)


Tengo la sensación de que estás tratando de encontrar el número de instancias de la palabra Apple. Si esto es correcto, podría usar esta fórmula:

=COUNTIF(A:A,"Apple")

Pero esto solo le dará un recuento de todas las instancias de la palabra Apple en la columna A, donde Apple es el contenido completo de esa celda.


Si desea contar todas las instancias en las que una celda contiene Apple, incluso si también contiene otras palabras (por ejemplo, Apple Pie), deberá volver a su declaración FIND en una columna adicional y usar una declaración IF, tal vez algo así como esta:

=IF(ISERROR(FIND("Apple",$A2)),0,1)

Esto devolverá un 0 si la instrucción FIND resulta en un error, y de lo contrario devolverá un 1. Luego, simplemente puede sumar esa columna para obtener el recuento de celdas con la palabra Apple en algún lugar dentro de ellas.

CLockeWork
fuente
Gracias por su explicación ... esto responde a la parte en la que me estaba yendo mal con FIND.
Gh0sT
0

Analizando valores en una celda usando la función Buscar y superando el #VALUE!resultado

Recoger valor antes de encontrar "&"

=IF(IFERROR(FIND("&",B:B),0)>0,MID(B:B,1,FIND("&",B:B)-1),TRIM(B:B))

Recogiendo valor después de encontrar "&"

=IF(IFERROR(FIND("&",B:B),0)>0,MID(B:B,FIND("&",B:B)+1,99),"")

Explicación

  1. Probar el error ENCONTRAR y sustituir con 0
  2. Prueba usando afuera si
  3. Resolver si los resultados

Ejemplo 1

=IF(IFERROR(FIND("&",B:B),0)>0,MID(B:B,FIND("&",B:B)+1,99),"")
  • La celda contiene a Mary y David
  • El valor se convierte en 6 para el hallazgo
  • Comenzando en la posición hasta el valor de recogida correcto
  • El resultado es "David"

Ejemplo: 2

  • La celda contiene a María
  • El valor se convierte en 0
  • El resultado es nulo

Ejemplo: 3

Recoger valor antes de "&"

=IF(IFERROR(FIND("&",B:B),0)>0,MID(B:B,1,FIND("&",B:B)-1),TRIM(B:B))
  • La celda contiene a Mary y David
  • El resultado es María
Paul Katzmark
fuente
1
¿Puedes agregar algo de contexto a tu respuesta? No está muy claro cómo resuelve la pregunta original.
Burgi
@ Burgi - Por el contrario, está muy claro. Paul ha superado el Find()hábito frustrante de la función de devolver un error si el texto de búsqueda no existe en la cadena buscada. Esta es una respuesta valiosa: deberías votarla como lo he hecho ahora, en lugar de votarla negativamente. (También responde la pregunta original de OP, aunque de una manera diferente.)
InteXX
@InteXX si observa que el comentario se realizó en febrero de 2016 y se realizó una edición poco después. Si crees que mi comentario ya no era necesario, debes marcarlo.
Burgi
@Burgi - Esa fue una edición bastante buena. Y perdóname ... hablé fuera de turno al decir que "deberías" hacer una cosa u otra. También supuse que eras el votante, lo cual también era incorrecto. Si notas la declaración en mi perfil, verás que las votaciones negativas (y las marcas) son cosas en las que elijo no participar. Pero gracias por tu amable oferta.
InteXX