Função HAS

Aplica-se A
Excel para Microsoft 365 Excel para Microsoft 365 para Mac

A função HAS permite-lhe verificar se um valor existe em qualquer parte de uma matriz ou intervalo. Devolve VERDADEIRO se o valor for encontrado e FALSO se não for.

HAS procura em todos os níveis de uma matriz aninhada, para que possa utilizá-lo em matrizes armazenadas dentro de uma única célula.

Sintaxe

A função HAS determina se o valor existe na matriz.

A sintaxe da função HAS é:

HAS(matriz; valor)

Argumento Descrição
matriz
(obrigatório)
A matriz ou intervalo no qual procurar. Cada nível de uma matriz aninhada é pesquisado.
valor
(obrigatório)
É o valor ou matriz de valores a procurar.

Nota

  • As comparações são rigorosas quanto ao tipo. O número 1 não corresponde ao texto "1" e o número 1 não corresponde a VERDADEIRO. Se precisar de comparar vários tipos, converta primeiro o valor — por exemplo, com a função VALOR.
  • As comparações de texto não são sensíveis a maiúsculas e minúsculas, pelo que "maçã" corresponde a "MAÇÃ".
  • Quando o valor é uma matriz, HAS devolve uma matriz de resultados VERDADEIRO e FALSO com a mesma forma do valor. Cada valor é testado individualmente.
  • Se matriz estiver em branco, HAS devolve o erro #CALC! .
  • Se o valor contiver um erro, esse erro é devolvido.
  • Para verificar vários valores ao mesmo tempo com uma única resposta VERDADEIRO ou FALSO, utilize HASANY ou HASALL.

Exemplos

Copie os dados de exemplo e copie-os na célula A1 de uma nova folha de cálculo do Excel. Se quiser, pode ajustar as larguras das colunas para ver todos os dados.

Exemplo 1

Verifique se um intervalo contém valores específicos.

Dados        
10 20 30 40 50
Fórmulas Perguntas
=HAS(A2:E2;30) 30 está na lista?
=HAS(A2:E2;99) Está 99 na lista?

A ilustração seguinte mostra os resultados.

HAS devolve VERDADEIRO para 30 e FALSO para 99 quando procura um intervalo que contém 10, 20, 30, 40 e 50

Exemplo 2

Verifique se existem vários valores em simultâneo. Uma vez que o segundo argumento é uma matriz, HAS devolve um resultado por valor, na mesma forma dos valores que procurou.

Dados    
1 2 3

Deixe duas células vazias abaixo da segunda fórmula para que os resultados possam ser transpostos.

Fórmulas Descrição
=HAS(A2:C2,{{2,5}}) Devolve uma única célula que contém a matriz aninhada {TRUE,FALSE}
=HAS(A2:C2,{2; 5; 3}) Devolve VERDADEIRO, FALSO E VERDADEIRO Transpor três células – um resultado por valor

A ilustração seguinte mostra os resultados.

HAS devolve VERDADEIRO e FALSO numa única célula de matriz aninhada, e VERDADEIRO, FALSO e VERDADEIRO em três células

Exemplo 3

Procure dentro de uma matriz aninhada. Copie toda a tabela e cole-a na célula A1 de uma nova folha de cálculo. A fórmula em A2 armazena uma matriz aninhada numa única célula.

Dados  
={{{1,2};{3,4}}}
Fórmulas Descrição
=HAS(A2;3) Devolve VERDADEIRO. HAS procura em todos os níveis, então 3 é encontrado dentro {3,4}
=HAS(A2,5) Devolve FALSO. Nenhum nível da matriz aninhada contém 5

A ilustração seguinte mostra os resultados.

HAS localiza 3 dentro de uma matriz aninhada e devolve VERDADEIRO; procurar 5 devolve FALSO