Como converter uma tabela em formato de matriz para três colunas no Excel?
Ao trabalhar com dados no Excel, poderá encontrar frequentemente tabelas em formato de matriz que apresentam informação numa grelha, em que tanto as linhas como as colunas servem como cabeçalhos. Embora este formato seja visualmente útil para algumas análises, poderá precisar de transformar esta matriz numa «lista» ou tabela de três colunas para tarefas como importação para base de dados, normalização de dados, criação de gráficos ou análise avançada. Converter a matriz num formato de três Colunas (por vezes designado por dados «despivotados») permite uma filtragem, agregação e integração mais fácil com outras ferramentas de dados. Veja o exemplo abaixo que ilustra esta transformação:
➤ Converter tabela em estilo de matriz para lista com Tabela Dinâmica
➤ Converter tabela em estilo de matriz para lista com código VBA
➤ Converter tabela em estilo de matriz para lista com Kutools para Excel
➤ Converter tabela em estilo de matriz para lista com Fórmula do Excel
Converter tabela em formato de matriz em lista com Tabela Dinâmica
No Excel, não existe um comando incorporado direto para converter uma tabela em formato de matriz numa tabela de três colunas. Contudo, utilizando o Assistente de Tabela Dinâmica, pode transformar eficientemente uma matriz cruzada em dados tabulares simples, ideais para análise posterior. Esta abordagem é perfeita para conjuntos de dados pequenos a médios e especialmente útil quando pretende simplificar uma estrutura complexa de relatório. No entanto, é menos adequada para grandes volumes de dados ou para utilizadores pouco familiarizados com operações de Tabelas Dinâmicas.
1. Abra a folha de cálculo que contém a sua matriz. Prima Alt + D, depois P para abrir o Assistente de Tabela Dinâmica e Gráfico Dinâmico. No assistente:
- Em Onde estão os dados que pretende analisar, escolha Intervalos múltiplos consolidados.
- Em Que tipo de relatório pretende criar, selecione Tabela Dinâmica.

2. Clique em Seguinte. Na caixa de diálogo Passo 2a de 3, selecione Criarei os campos de página:

3. Clique em Seguinte. Em Passo 2b do 3, clique no botão
e selecione o intervalo de dados completo da matriz, incluindo os cabeçalhos de linha e coluna. Clique em Adicionar para inserir o intervalo na lista Todos os intervalos. Confirme que a seleção abrange toda a matriz.

4. Clique em Seguinte. No Passo 3 de 3, escolha se pretende colocar a Tabela Dinâmica numa nova folha de cálculo ou numa célula específica:

5. Clique em Concluir. O Excel gera uma Tabela Dinâmica que resume a matriz. Por predefinição, exibe totais agregados nas interseções. Não precisa de ajustar a estrutura da Tabela Dinâmica para esta tarefa — prossiga para o passo seguinte:

6. Faça duplo clique na célula onde as etiquetas de linha e coluna Total Geral se cruzam (por exemplo, na célula F22). O Excel criará uma nova folha com uma tabela de três colunas, em que cada linha apresenta uma combinação única de etiqueta de linha e etiqueta de coluna, juntamente com o respetivo valor.

7. Para finalizar, selecione a nova tabela, clique com o botão direito e escolha Tabela > Converter em Intervalo. Isto remove a formatação de tabela, deixando uma lista simples e editável:

Dica: Se a sua matriz mudar frequentemente, terá de repetir este processo para atualizar a tabela de três colunas. Este método é ideal para dados estáticos. Além disso, se a sua matriz contiver células vazias ou mescladas, poderá ser necessária alguma limpeza antes de utilizar esta técnica.
Converter tabela em formato de matriz em lista com código VBA
Se preferir automatização ou precisar de aplicar esta transformação repetidamente, utilizar uma macro VBA permite converter rapidamente qualquer tabela em formato de matriz numa estrutura de três colunas. Este método revela-se especialmente eficaz para grandes volumes de dados ou layouts variados, eliminando a necessidade de formatação manual. É ideal para utilizadores familiarizados com a execução de scripts VBA.
1. Prima Alt + F11 para abrir o editor Microsoft Visual Basic para Aplicações.
2. No editor, clique em Inserir > Módulo para criar um novo módulo. Depois, cole o seguinte código na janela do módulo:
📜 Código VBA: Converter matriz em lista
Sub ConvertTable()
' Updated by Extendoffice
Dim Rng As Range
Dim cRng As Range
Dim rRng As Range
Dim xOutRng As Range
xTitleId = "KutoolsforExcel"
Set cRng = Application.InputBox("Select your Column labels", xTitleId, Type:=8)
Set rRng = Application.InputBox("Select Your Row Labels", xTitleId, Type:=8)
Set Rng = Application.InputBox("Select your data", xTitleId, Type:=8)
Set outRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
Set xWs = Rng.Worksheet
k = 1
xColumns = rRng.Column
xRow = cRng.Row
For i = Rng.Rows(1).Row To Rng.Rows(1).Row + Rng.Rows.Count - 1
For j = Rng.Columns(1).Column To Rng.Columns(1).Column + Rng.Columns.Count - 1
outRng.Cells(k, 1) = xWs.Cells(i, xColumns)
outRng.Cells(k, 2) = xWs.Cells(xRow, j)
outRng.Cells(k, 3) = xWs.Cells(i, j)
k = k + 1
Next j
Next i
End Sub 3. Prima F5 ou clique em Executar para executar a macro. Uma série de mensagens irá orientá-lo nas seleções necessárias:
Passo 1:Selecione as etiquetas de coluna(normalmente a Linha Superior da sua matriz):

Passo 2:Selecione as etiquetas de linha(normalmente a primeira coluna da sua matriz):

Passo 3:Selecione a matriz Intervalo de Dadosreal (excluindo Cabeçalhos de Linha e Coluna):

Passo 4: Escolha a célula de destino onde a tabela convertida de três colunas deverá começar. Recomenda-se utilizar uma célula vazia ou uma nova folha de cálculo:

Passo 5: Clique em OK. A sua matriz será agora convertida numa lista simples de três colunas.
⚠️ Notas e dicas:
• Certifique-se de que a matriz Intervalo de Dados não inclui títulos de colunas ou linhas.
• Se a sua matriz tiver células mescladas, desagregue-as antes de executar a macro para evitar erros.
• Se encontrar erros, verifique novamente os intervalos selecionados e certifique-se de que estão corretamente alinhados.
Converter tabela em estilo de matriz para lista com Kutools para Excel
Embora os métodos acima sejam eficazes, podem parecer tediosos ou intimidantes para utilizadores menos experientes. Se procura uma solução rápida e fácil de utilizar, o Kutools para Excel oferece uma utilidade dedicada denominada Converter Dimensão da Tabela, concebida especificamente para este fim.
Esta ferramenta é ideal para utilizadores que frequentemente convertem tabelas em formato de matriz ou precisam de realizar processamento em lote. Preserva a formatação original — como tipo de letra, cor de preenchimento e fórmulas — sempre que necessário. Uma possível desvantagem é o facto de o Kutools ser um suplemento de terceiros que requer instalação, mas constitui uma opção poderosa para quem reestrutura dados no Excel com regularidade.
Passos:
1. Após instalar o Kutools, aceda ao separador Kutools, clique em Intervalo e, em seguida, selecione Converter Dimensão da Tabela:

2. Na caixa de diálogo Converter Dimensão da Tabela:
- (1) Escolha Converter Tabela Bidimensional em Tabela Unidimensional em Tipo de Conversão.
- (2) Clique no botão
junto a Intervalo de origem para selecionar a sua tabela de matriz. - (3) Clique no botão
junto a Intervalo dos resultados para especificar onde colocar a saída.
Certifique-se de selecionar toda a matriz (incluindo cabeçalhos e dados) para evitar conversões parciais ou resultados incorretos.

3. Clique em OK. A matriz será convertida instantaneamente numa lista com três colunas, preservando sempre que possível a formatação original das células:

Dica: Esta funcionalidade também suporta a operação inversa — converter uma lista simples numa matriz bidimensional. É perfeita para recriar relatórios ou preparar dados para análise cruzada. Veja: como converter uma lista numa matriz 2D Tabela Bidimensional.
➤ Saiba mais sobre a funcionalidade Converter Dimensão da Tabela
⏬ Descarregue e experimente já o Kutools para Excel gratuitamente!
Converter tabela em estilo de matriz para lista com Fórmula do Excel
Se preferir uma abordagem baseada em fórmulas — especialmente útil se quiser que a sua lista com três colunas seja atualizada dinamicamente à medida que a matriz muda — pode utilizar uma combinação das funções ÍNDICE, LIN, COL e CONTAR.VAL para desfazer manualmente a pivotagem dos dados. Esta solução não requer VBA nem suplementos e é ideal para quem pretende evitar macros ou ferramentas externas. Contudo, exige atenção cuidadosa às referências das fórmulas, pois estas normalmente têm de ser introduzidas como fórmulas matriciais ou arrastadas sistematicamente para baixo ou para os lados. É mais prática para matrizes de dimensão moderada e situações em que a lista precisa de permanecer ativa e reativa às alterações nos dados de origem.
Suponha que a sua Intervalo de Dados é a seguinte:
- As etiquetas das linhas estão nas células A2:A10.
- As etiquetas das colunas estão nas células B1:J1.
- Os valores da matriz estão nas células B2:J10.
1. Crie uma nova folha de cálculo ou comece numa área vazia da sua folha existente. Na célula L2, introduza a seguinte fórmula para extrair a etiqueta da linha:
=INDEX($A$2:$A$10,INT((ROW(A1)-1)/COUNTA($B$1:$J$1))+1) 2. Na célula M2, introduza esta fórmula para extrair a etiqueta correspondente da coluna:
=INDEX($B$1:$J$1,MOD(ROW(A1)-1,COUNTA($B$1:$J$1))+1) 3. Na célula N2, extraia o valor da matriz com:
=INDEX($B$2:$J$10,INT((ROW(A1)-1)/COUNTA($B$1:$J$1))+1,MOD(ROW(A1)-1,COUNTA($B$1:$J$1))+1) 4. Selecione as células L2:N2 e arraste a alça de preenchimento para baixo até à linha correspondente ao produto do número de linhas × número de colunas (neste exemplo, 9 linhas × 9 colunas = 81 linhas no total).
✅ Dicas:
- Ajuste todos os intervalos de modo a corresponderem à sua estrutura de dados real.
- Utilize
SEeÉCÉLULAVAZIApara filtrar linhas vazias, se necessário. - Para obter um comportamento de expansão automática, considere utilizar
DESLOCAMENTOou intervalos nomeados dinâmicos. - Este método é mais prático para matrizes de dimensão estática e com um volume moderado de dados.
ℹ️ Notas adicionais:
- Vantagens: As fórmulas permanecem ativas e refletem automaticamente as alterações na matriz — sem necessidade de VBA nem extras.
- Desvantagens: Pode reduzir o desempenho do livro com matrizes grandes. Requer uma configuração cuidadosa.
Demonstração: Converter tabela em estilo de matriz para lista com Kutools para Excel
As Melhores Ferramentas de Produtividade para o Office
Potencie as suas competências no Excel com Kutools para Excel e experimente uma eficiência como nunca antes.Kutools para Excel Oferece mais de 300 funcionalidades avançadas para impulsionar a produtividade e Economizar Tempo.Clique aqui para obter a funcionalidade de que mais precisa...
Office Tab Traz uma interface com separadores para o Office e torna o seu trabalho muito mais fácil
- Ative a edição e leitura com separadores no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novos separadores da mesma janela, em vez de em janelas separadas.
- Aumente a sua produtividade em 50 % e elimine centenas de cliques do rato todos os dias!
Todos os suplementos Kutools — num único instalador.
Kutools for Office reúne suplementos para Excel, Word, Outlook e PowerPoint, além do Office Tab Pro, sendo a solução ideal para equipas que trabalham em várias aplicações do Office.
- Pacote tudo-em-um— suplementos para Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Um instalador, uma licença— configuração em minutos (pronto para MSI)
- Funciona melhor em conjunto— produtividade simplificada em todas as aplicações do Office
- Teste gratuito de 30 dias com todas as funcionalidades— sem registo, sem cartão de crédito
- Melhor relação qualidade-preço— poupe face à compra individual dos suplementos
