Fórmula do Excel: intervalo contém um valor que não está em outro intervalo -

Fórmula genérica

=SUMPRODUCT(--(ISNA(MATCH(rngA,rngB,0))))>0

Resumo

Para testar se um intervalo contém algum valor (ou seja, pelo menos um valor) que não esteja em outro intervalo, você pode usar a função SUMPRODUCT com MATCH e ISNA.

No exemplo mostrado, a fórmula em F6 é:

=SUMPRODUCT(--(ISNA(MATCH(lista,listb,0))))>0

Explicação

Normalmente, a função MATCH recebe um único valor de pesquisa e retorna uma única correspondência, se houver. Neste caso, entretanto, estamos dando a MATCH um array para o valor de pesquisa, então ele retornará um array de resultados, um por elemento no array de pesquisa. MATCH está configurado para "correspondência exata". Se uma correspondência não for encontrada, MATCH retornará o erro # N / A. Depois que a partida é executada, ele retorna com algo assim:

=SUMPRODUCT(--(ISNA((3;5;6;2;#N/A;4))))>0

Aproveitamos isso usando a função ISNA para testar quaisquer erros # N / A.

Depois da ISNA, temos:

=SUMPRODUCT(--((FALSE;FALSE;FALSE;FALSE;TRUE;FALSE)))>0

Usamos o operador duplo negativo (duplo unário) para converter valores TRUE FALSE em uns e zeros, que nos dá o seguinte:

=SUMPRODUCT((0;0;0;0;1;0))>0

SUMPRODUCT então soma os elementos na matriz e o resultado é comparado a zero para forçar um resultado TRUE ou FALSE.

Artigos interessantes...