Erro #VALUE da superação do Excel com a função FIND

11

Na célula A1, digitei "Apple". Em B2, insiro a fórmula =FIND("Apple",A:A). No entanto, continuo recebendo #VALUEerros. Alguém pode explicar isso e como superá-lo?

Gh0sT
fonte
Dê uma olhada em Localizando dados em uma tabela do Excel .
rickhg12hs
11
Explique o que você está tentando realizar para que possamos ajudá-lo. FINDé usado para localizar uma sequência de texto dentro de um determinado conjunto de texto e, em seguida, retorna a posição dele dentro da sequência de texto. Você pode estar usando a função errada, dependendo do que está tentando fazer.
precisa
Estou basicamente tentando procurar uma seqüência de texto dentro de uma coluna. A posição do texto dentro da coluna não é fixa. Devo estar usando qualquer outra função e onde estou errado FIND?
Gh0st
A função FIND funciona se eu inserir a fórmula na célula B1 ... estranho!
Gh0st
11
Normalmente você se aplica FINDa uma única célula - se você usa o Excel, =FIND("Apple",A:A)na B2verdade, retorna uma "matriz" de valores .... mas o que você vê na célula será o resultado da coluna A da célula na mesma linha, por isso, A2 não contém "Apple" você começa #VALUE !, mas em B1 você recebe um número - ainda melhor usar uma única célula .....
Barry houdini

Respostas:

4

Se você deseja encontrar a primeira célula (linha) na coluna Aque contém a palavra “maçã”, possivelmente como parte de uma palavra maior (por exemplo, “maçã de maçã” ou “molho de maçã”) ou uma frase, use

=MATCH("*apple*", A:A, 0)
Scott
fonte
E já que isso responde à parte que eu deveria usar ... Estou marcando isso como a resposta ... obrigado!
Gh0st
21

Encontre aparências em uma célula, não em um intervalo de células. O componente de sintaxe dentro do texto está olhando para uma sequência específica, mas um intervalo de células não é uma sequência. Você pode conseguir isso com uma matriz, mas a abordagem mais simples seria criar uma coluna localizadora; faça uma coluna ao lado da coluna que você deseja pesquisar e adicione a fórmula em cada célula adjacente; portanto, em B2 a instrução dentro do texto seria A2.

=FIND("Apple",A1)


Tenho a sensação de que você está tentando encontrar o número de instâncias da palavra Apple. Se isso estiver correto, você poderia usar esta fórmula:

=COUNTIF(A:A,"Apple")

Mas isso fornecerá apenas uma contagem de todas as instâncias da palavra Apple na coluna A, onde Apple é todo o conteúdo dessa célula.


Se você quiser contar todas as instâncias em que uma célula contém Apple, mesmo que também contenha outras palavras (por exemplo, torta de maçã), será necessário voltar à sua instrução FIND em uma coluna extra e usar uma instrução IF, talvez algo como isto:

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

Isso retornará um 0 se a instrução FIND resultar em um erro e, caso contrário, retornará um 1. Você pode simplesmente somar essa coluna para obter a contagem de células com a palavra Apple em algum lugar dentro delas.

CLockeWork
fonte
Obrigado pela sua explicação ... isso responde à parte em que eu estava errado com o FIND.
Gh0st
0

Analisando valores em uma célula usando a função Localizar e superando o #VALUE!resultado

Escolher valor antes da localização de "&"

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

Obtendo valor após a localização de "&"

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

Explicação

  1. Teste o erro FIND e substitua por 0
  2. Teste usando o If externo
  3. Resolver se os resultados

Exemplo 1

=IF(IFERROR(FIND("&",B:B),0)>0,MID(B:B,FIND("&",B:B)+1,99),"")
  • A célula contém Mary & David
  • O valor passa a 6 para a descoberta
  • Começando na posição à direita, pegue o valor
  • O resultado é "David"

Exemplo: 2

  • Célula contém Maria
  • O valor se torna 0
  • O resultado é nulo

Exemplo: 3

Pegando valor antes do "&"

=IF(IFERROR(FIND("&",B:B),0)>0,MID(B:B,1,FIND("&",B:B)-1),TRIM(B:B))
  • A célula contém Mary & David
  • O resultado é Mary
Paul Katzmark
fonte
11
Você pode adicionar algum contexto à sua resposta? Não está muito claro como isso resolve a questão original.
Burgi
@Burgi - Pelo contrário, é muito claro. Paul superou o Find()hábito frustrante da função de retornar um erro se o texto da pesquisa não existir na string pesquisada. Essa é uma resposta valiosa - você deve votar novamente, como já fiz agora, em vez de votar novamente. (Ele também OP de resposta de pergunta original, embora de uma forma diferente.)
InteXX
@InteXX se você observar que o comentário foi feito em fevereiro de 2016 e houve uma edição feita logo em seguida. Se você acha que meu comentário não é mais necessário, sinalize-o.
Burgi
@Burgi - Essa foi uma edição muito boa. E me perdoe ... Falei sem rodeios afirmando que você "deveria" fazer uma coisa ou outra. Também assumi que você era o defensor do voto, o que também era impróprio. Se você notar a declaração no meu perfil, verá que a votação baixa e a sinalização são coisas das quais eu escolho não participar. Mas obrigado por sua oferta agradável.
InteXX 18/08/19