Descobrir se parte de uma string está em outra coluna no Excel

2

Eu tenho uma planilha contendo a seguinte coluna (lookup)

ABC
DEF
HIJ

Eu tenho outra folha contendo os dados

ABC123
QWE762
HIJ234

Eu quero olhar para os 3 primeiros caracteres da segunda planilha, e se ela corresponder a qualquer célula na primeira planilha (mesmo arquivo do Excel), a saída "Y", caso contrário, a saída "N".

Então minha saída deve ser

ABC123 Y
QWE762 N
HIJ234 Y

Eu tenho

=IF(MATCH(LEFT(B2,3),A2:A4,0),"Y",N")

em que B2 é a célula ABC123 e A2:A4 é a coluna na primeira folha. Eu continuo recebendo o erro #N/A (Valor não disponível). Por que isso?

    
por Rayne 22.08.2016 / 05:58

2 respostas

3

A função MATCH retorna #NA se não houver correspondência. IF testa verdadeiro ou falso, mas retorna #NA de MATCH , então a condição falsa, "N", nunca acontece.

Use IFNA para testar o resultado #NA. Supondo que Sheet1 tenha a coluna de pesquisa, essa fórmula em C2 da segunda planilha testa o resultado da função IF . IF retorna "Y" ou #NA, então IFNA retorna "Y" ou "N".

=IFNA(IF(MATCH(LEFT(B2,3),Sheet1!$A2:$A4,0),"Y"),"N")
    
por 22.08.2016 / 07:42
1

O erro N / A significa que não há correspondência exata. Verifique os seus dados.

O tipo de dados também é importante. Pode haver números em uma planilha e números armazenados como texto na outra. Se o intervalo de pesquisa contiver números, você precisará converter a saída de texto da instrução Left () em números, por exemplo, como

 =IF(MATCH(LEFT(B2,3)+0,A2:A4,0),"Y",N")
    
por 22.08.2016 / 06:05