Existe uma função interna para verificar se uma célula contém um determinado caractere / substring?
Isso significaria que você pode aplicar funções textuais como Left
/ Right
/ Mid
de forma condicional sem gerar erros quando os caracteres delimitadores estiverem ausentes.
excel
excel-formula
geotoria
fonte
fonte
CONTAINS("Text", cell)
função.FIND()
no lugar deSEARCH()
,
invés de;
. Depois de alterar a fórmula fornecida=ISNUMBER(SEARCH("Some Text"; A3))
, funcionou. Obrigado!A fórmula a seguir determina se o texto "CHECK" aparece na célula C10. Caso contrário, o resultado está em branco. Se isso acontecer, o resultado é o trabalho "CHECK".
fonte
Essa fórmula me parece mais intuitiva:
isso retornará TRUE se "SomeText" estiver contido em A1.
As fórmulas IsNumber / Search e IsError / Find mencionadas nas outras respostas certamente funcionam, mas sempre me pego precisando procurar a ajuda ou fazer experiências no Excel com muita frequência com essas.
fonte
Para aqueles que gostariam de fazer isso usando uma única função dentro da instrução IF, eu uso
para ver se o substring TEXT está na célula A1
[NOTA: O TEXTO precisa ter asteriscos em torno dele]
fonte
Confira a
FIND()
função no Excel.Sintaxe:
Retorna
#VALUE!
se não encontrar a substring.fonte
ISNUMBER
também funciona, apenas para correspondências que diferenciam maiúsculas de minúsculas.Eu gosto da resposta Rink.Attendant.6. Na verdade, eu quero verificar várias seqüências de caracteres e fiz desta maneira:
Primeiro a situação: nomes que podem ser construtores de casas ou nomes de comunidades e eu preciso agrupar os construtores como um grupo. Para fazer isso, estou procurando a palavra "construtor" ou "construção" etc. etc.
fonte
=OR(COUNTIF(A1,"*builder*"),COUNTIF(A1,"*construction*"))
?COUNTIFS
:COUNTIFS(A1,"*builder*",A1,"*construction*")
É uma pergunta antiga, mas acho que ainda é válida.
Como não há função CONTAINS, por que não declará-la no VBA? O código abaixo usa a função Instr VBA, que procura uma substring em uma string. Retorna 0 quando a sequência não é encontrada.
fonte
Esta é uma pergunta antiga, mas uma solução para aqueles que usam o Excel 2016 ou mais recente é que você pode remover a necessidade de estruturas aninhadas se usando a nova
IFS( condition1, return1 [,condition2, return2] ...)
condicional.Eu o formatei para tornar visualmente mais claro como usá-lo para o caso desta pergunta:
Como
SEARCH
retorna um erro se uma string não for encontrada, envolvi-a com umISERROR(...)=FALSE
para verificar a verdade e, em seguida, retorne o valor desejado. Seria ótimo seSEARCH
retornado 0 em vez de um erro de legibilidade, mas é assim que infelizmente funciona.Outra nota de importância é que
IFS
retornará a correspondência que encontrar primeiro e, portanto, a ordem é importante. Por exemplo, se minhas seqüências de caracteres fossemSurf, Surfing, Surfs
asString1,String2,String3
mencionadas acima e a sequência de células,Surfing
ela corresponderia no primeiro termo, em vez do segundo por causa da substringSurf
. Assim, os denominadores comuns precisam ser os últimos da lista. MeuIFS
precisaria ser ordenadoSurfing, Surfs, Surf
para funcionar corretamente (trocarSurfing
eSurfs
também funcionaria neste exemplo simples), masSurf
precisaria ser o último.fonte
Aqui está a fórmula que estou usando
=IF( ISNUMBER(FIND(".",A1)), LEN(A1) - FIND(".",A1), 0 )
fonte
IFERROR(LEN(A1) - FIND(".", A1), 0)