Como combinar, remodelar e redimensionar matrizes no Excel
Assuma o controle das matrizes em sua planilha e organize-as como desejar.
Trabalhar com matrizes ou intervalos de células adjacentes no Microsoft Excel às vezes pode ser desafiador. Se quiser combinar, remodelar ou redimensionar um array, você pode escolher entre uma coleção de funções que podem abranger muitas situações.
Essas 11 funções são novas no Excel em agosto de 2022. Elas estão sendo implementadas para usuários do Excel ao longo do tempo, começando com Especialistas do escritório .
Combinar matrizes
Combinar dados em uma planilha pode ser difícil. Com as funções VSTACK e HSTACK, você pode empilhar arrays vertical e horizontalmente.
A sintaxe de cada função é a mesma que
VSTACK(array1, array2,...)
e
HSTACK(array1, array2,...)
com apenas um array obrigatório e outros opcionais.
Para combinar as matrizes nas células B2 a F3 e H2 a L3 verticalmente, use esta fórmula para a função VSTACK:
=VSTACK(B2:F3,H2:L3)
Para combinar essas mesmas matrizes horizontalmente, use esta fórmula para a função HSTACK:
=HSTACK(B2:F3,H2:L3)
Remodelar matrizes
Se o que você deseja não é combinar arrays, mas sim remodelá-los, existem quatro funções que você pode usar.
Converter uma matriz em uma linha ou coluna
Primeiro, as funções TOROW e TOCOL permitem moldar a matriz como uma linha ou coluna. A sintaxe para cada um é TOROW(array, ignore, by_column)
e TOCOL(array, ignore, by_column)
.
- Ignorar: para ignorar certos tipos de dados, insira 1 para espaços em branco, 2 para erros ou 3 para espaços em branco e erros. O padrão é 0 para ignorar nenhum valor.
- By_column: Use este argumento para varrer o array por coluna usando TRUE. Se nenhum argumento for incluído, FALSE é o padrão, que verifica o array por linha. Isso determina como os valores são ordenados.
Para converter a matriz B2 a F3 em uma linha, use esta fórmula com a função TOROW:
=TOROW(B2:F3)
Para converter a mesma matriz em uma coluna, use a função TOCOL com esta fórmula:
=TOCOL(B2:F3)
Converter uma linha ou coluna em uma matriz
Para fazer o oposto do acima e converter uma linha ou coluna em uma matriz, você pode usar WRAPROWS e WRAPCOLS. A sintaxe para cada um é WRAPROWS(reference, wrap_count, pad)
e WRAPCOLS(reference, wrap_count, pad)
com a reference
sendo um grupo de células.
- Wrap_count: o número de valores para cada linha ou coluna.
- Pad: O valor a ser exibido para o pad (célula vazia).
Para converter as células B2 a K2 em uma matriz bidimensional agrupando as linhas, use a função WRAPROWS. Com esta fórmula, as células são agrupadas usando três valores por linha com "vazio" como pad
.
=WRAPROWS(B2:K2,3,"empty")
Para converter as mesmas células em uma matriz bidimensional agrupando colunas, use a função WRAPCOLS. Com esta fórmula, as células são agrupadas usando três valores por coluna com "vazio" como pad
.
=WRAPCOLS(B2:K2,3,"empty")
Redimensionar matrizes
Talvez você queira ajustar o tamanho de um array adicionando alguns dados ou descartando células desnecessárias. Existem cinco funções para ajudá-lo a fazer isso dependendo do resultado desejado.
Pegue ou solte linhas ou colunas
Com a função TAKE, você mantém o número de linhas ou colunas especificadas. Com a função DROP, você faz o oposto e remove o número de linhas ou colunas especificado. Você usará números positivos para retirar ou eliminar do início da matriz e números negativos para retirar ou eliminar do final.
A sintaxe para cada um é TAKE(array, rows, columns)
e DROP(array, rows, columns)
onde você precisa de pelo menos um dos dois segundos argumentos; linhas
ou colunas
.
Para manter as duas primeiras linhas do array B2 a F5, use TAKE com o argumento rows
. Aqui está a fórmula:
=TAKE(B2:F5,2)
Para manter as duas primeiras colunas no mesmo array, use o argumento columns
:
=TAKE(B2:F5,,2)
Para remover as duas primeiras linhas do array B2 a F5, use DROP com o argumento rows
e esta fórmula:
=DROP(B2:F5,2)
Para remover as duas primeiras colunas do mesmo array, use o argumento columns
e esta fórmula:
=DROP(B2:F5,,2)
Mantenha um certo número de linhas ou colunas
Para selecionar os números exatos de linhas e colunas que você deseja manter em uma matriz, você usaria as funções CHOOSEROWS e CHOOSECOLS.
A sintaxe para cada um é CHOOSEROWS(array, row_num1, row_num2,...)
e CHOOSECOLS(array, column_num1, column_num2,...)
onde os dois primeiros argumentos são obrigatório. Você pode adicionar mais números de linhas e colunas, se desejar.
Para retornar as linhas 2 e 4 da matriz B2 a F5, você usaria a função CHOOSEROWS e esta fórmula:
=CHOOSEROWS(B2:F5,2,4)
Para retornar as colunas 3 e 5 da mesma matriz, você usaria a função CHOOSECOLS com esta fórmula:
=CHOOSECOLS(B2:F5,3,5)
Lembre-se de usar os números das linhas ou colunas para a matriz, não para a folha.
Expanda uma matriz para dimensões específicas
Talvez você planeje adicionar mais dados ao seu array, então você deseja torná-lo um tamanho específico para adicionar uma borda ou usar formatação condicional. Com a função EXPAND, você insere o número de linhas e colunas que seu array deve cobrir.
A sintaxe da função é EXPAND(array, rows, columns, pad)
onde um argumento rows
ou columns
ausente significa que eles não serão expandidos. Opcionalmente, você pode incluir o valor pad
para as células vazias.
Para expandir a matriz B2 a F5 para cobrir 10 linhas e 10 colunas, você usaria esta fórmula:
=EXPAND(B2:F5,10,10)
Para expandir a mesma matriz para as mesmas dimensões e incluir o pad
"vazio", use esta fórmula:
=EXPAND(B2:F5,10,10,"empty")
Apesar de bloco
argumento é opcional, você pode preferi-lo a vendo um erro como mostrado acima.
Essas 11 funções oferecem mais controle do que nunca sobre seus arrays no Microsoft Excel. Experimente e veja se eles conseguem o que você precisa.