Tempo de leitura:
Durante anos o Excel sempre funcionou com o conceito de valor escalar: uma célula -> um valor.
As fórmulas retornavam num cálculo um valor.
A partir de 2018, com o novo conceito de Arrays Dinâmicos, esta realidade mudou! Com os Arrays Dinâmicos passou a ser possível devolver cálculos com múltiplos valores, espalhando os mesmos ao longo de linhas, colunas ou mesmo numa matriz. Esta lógica abriu um novo leque de possibilidades e funções disponíveis no Excel.
Os Arrays Dinâmicos por outro lado, por serem dinâmicos também trouxeram alguns constrangimentos nas folhas de cálculo, uma vez que pelo facto dos intervalos aumentarem ou diminuírem a sua dimensão, podem sobrepor-se a outras células da folha de cálculo, que causam erros de transposição na folha de cálculo.
Esse problema deixa de existir com a novidade no Excel – As Listas.
O Microsoft Excel permite agora trabalhar com listas! As listas podem incluir intervalos (arrays aninhados) que introduz novas formas de armazenar e organizar a informação, mantendo os dados estruturados sem comprometer o espaço na folha de cálculo! Cabe tudo numa única célula!
Criar uma lista
Uma lista pode ter uma dimensão (Horizontal ou Vertical) ou 2 dimensões (uma matriz).
Por norma uma lista é vertical, como uma coluna de uma tabela.
A coluna “E” mostra nas linhas 5 a 7 o objeto lista. Como é possível verificar, a lista é composta por vários “itens” e tem o ícone de uma lista, que indica uma estrutura vertical.

Vamos então ver como podemos criar uma lista.
A lista pode ser criada através do Menu Inserir -> Lista, ou pelo atalho CTRL + J.

De seguida introduzimos os valores separados por “;”

Para uma lista horizontal, devemos colocar os valores separados por “\” com as definições regionais em português. Com as definições regionais do sistema em inglês o separador é a “,”.
Adicionalmente, em português, devemos considerar as {} para criar a lista.

E podemos também criar a lista com 2 dimensões, numa martiz.

Filtrar agora é mais fácil
Numa coluna, se os vários itens estiverem organizados como lista, podemos filtrar a informação de uma tabela, baseada nos itens da lista.
Começamos por converter os valores da coluna numa lista. Para cada linha é criada uma lista, com os seus respetivos itens.

Depois de termos os valores de cada linha em Lista, podemos usar a ferramenta do Filtro. No filtro conseguimos escolher agora entre os itens da lista, ou o valor das células.

Novas Funções com listas
Com as listas vieram 4 novas funções para o Excel:
- FLATTEN – Permite combinar várias listas num único Array Dinâmico.
- HAS – Verificar se um item especificado existe na lista.
- HASALL – Verificar se todos os itens especificados existem na lista.
- HASANY – Verificar se algum dos itens especificados existe na lista.
Função FLATTEN
A função FLATTEN pode ser usada para converter várias listas num único Array. A função pode funcionar por níveis, quando tens Arrays aninhados dentro de uma lista.

Verificar se a lista contém valores: HAS, HASALL, HASANY
Com as funções HAS, HASALL e HASANY conseguimos verificar respetivamente se a lista contém um valor, todos os valores, ou pelo menos um dos valores.
A função HAS permite identificar se a lista contém um determinado valor. A função devolve um valor Booleano (VERDADEIRO / FALSO).

Na sequência da função HAS podes utilizar por exemplo a função SE para trocar o valor Booleano.

A função HASALL permite identificar se a lista contém todos os valores (valores que podem estar em outra lista). A função devolve um valor Booleano (VERDADEIRO / FALSO).

Que mais uma vez pode ser utilizada em conjunto com a função SE.

A função HASANY permite identificar se a lista contém algum dos valores (valores que podem estar em outra lista). A função devolve um valor Booleano (VERDADEIRO / FALSO).

Arrays Aninhados em listas
A outra funcionalidade com as listas é que podemos aninhar um Array dentro de uma lista. Esta funcionalidade é muito útil quando pretendemos colocar um Array dentro de uma célula, evitando o erro de sobreposição de um Array com outras células.

Para evitar a sobreposição e o erro de #TRANSPOSIÇÃO vamos converter o resultado da função numa lista, permitindo aplicar a função aos restantes valores abaixo.

Próximo artigo:
Artigo Anterior:
Ficheiros
Artigos por Categoria
- Microsoft Excel (49)
- Power Apps (16)
- Power Automate (3)
- Power BI (15)
- Power Query (16)
- Python (3)
- VBA (7)
Últimos Artigos
- Vários Valores numa Célula! Novidade com Listas + 4 Novas Funções!
- Power Query M: Quando devemos usar uma função explícita em vez de each _?
- Quando usar Folder.Files e Folder.Contents no Power Query
- Funções DAX para Análise Avançada: INDEX, OFFSET e WINDOW
- Funções REDUCE e SCAN no Excel: Entenda a Diferença

Deixe um comentário