Como converter a tabela de referência cruzada (tabela 2-dimensional) para listar no Excel?
Você sabe como converter uma tabela cruzada (tabela bidimensional) em uma tabela de lista (tabela unidimensional) no Microsoft Excel? Por alguns motivos, pode ser necessário converter uma tabela (com cabeçalhos de linha e cabeçalhos de coluna) em uma lista plana no Excel. Os seguintes truques podem ajudá-lo a converter uma tabela cruzada em uma lista plana de forma fácil e rápida:
- Converter tabela cruzada para listar no Excel com VBA
- Converta tabela cruzada em lista no Excel com o Kutools para Excel
Suponha que você tenha uma tabela cruzada e precise convertê-la em uma lista da seguinte maneira.
Tabela cruzada (com títulos de linhas e títulos de colunas) | Uma tabela de lista (tabela unidimensional) |
Converter tabela cruzada para listar no Excel com VBA
A macro VBA a seguir pode ajudá-lo a converter rapidamente todas as tabelas cruzadas da planilha ativa em listas simples.
Etapa 1: Mantenha pressionado o botão outro + F11 no Excel e abre a janela Microsoft Visual Basic for Applications.
Etapa 2: clique inserção > Móduloe cole a macro a seguir na janela do módulo.
O VBA na tabela de crosstab transposta para listar:
Sub ConvertTableToList ()
Const TEST_COLUMN As String = "A"
Dim i Tão Longo, j Tão Longo
Dim iLastRow As Long
Dim iLastCol enquanto
Application.ScreenUpdating = False
Com ActiveSheet
iLastRow = .Cells (.Rows.Count, TEST_COLUMN) .End (xlUp) .Row
Para i = iLastRow para 2 etapas -1
iLastCol = .Cells (i, .Columns.Count) .End (xlToLeft) .Column
Para j = iLastCol para 3 etapa -1
.Rows (i + 1) .Inserir
.Células (i + 1, 2) .Valor = .Células (i, j) .Valor
.Cells (i, j) .Value = ""
Próxima j
Proximo eu
.Rows (1) .Delete
Terminar com
Application.ScreenUpdating = True
End Sub
Etapa 3: clique no botão F5 chave para executar esta macro.
Em seguida, você verá a lista convertida mostrando a seguinte captura de tela:
Observação:
1. Esta macro VBA perde alguns dados da tabela original, como cabeçalhos ou outros. Nesse caso, os cabeçalhos (nome, nota e classe) são perdidos.
2. Você pode alterar As String = "A", para atender às suas necessidades. Por exemplo, se a tabela cruzada for declarada na Coluna E, você deve em vez disso "E" de "A".
3. E se houver outros dados na planilha, às vezes os dados na lista estarão errados após a conversão de uma tabela cruzada.
Converta tabelas cruzadas em listas no Excel com o Kutools para Excel
Se você tem Kutools for Excel instalado, você pode usar seu Dimensões da tabela de transposição ferramenta para converter tabelas cruzadas em lista plana rapidamente.
Kutools for Excel inclui mais de 300 ferramentas úteis do Excel. Gratuito para testar sem limitação em 30 dias. Get it Now.
Passo 1: Selecione a tabela que você irá converter em uma lista.
Etapa 2: clique no botão Kutools >modificar > Dimensão da tabela de transposição. Veja a seguinte captura de tela:
Etapa 3: Na caixa de diálogo Transpor Dimensões da Tabela, marque o Tabela cruzada para listar opção e selecione a Faixa de resultados clicando no botão.
Etapa 4: clique OK botão.
Em seguida, você verá que a tabela original é convertida em uma lista plana conforme a seguinte captura de tela:
Dimensões da tabela de transposição também pode converter lista em tabela de referência cruzada. Para obter mais informações, vá para Dimensões da tabela de transposição.
Artigos relativos:
Melhores ferramentas de produtividade de escritório
Aprimore suas habilidades de Excel com o Kutools para Excel e experimente uma eficiência como nunca antes. Kutools para Excel oferece mais de 300 recursos avançados para aumentar a produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
Office Tab traz interface com guias para o Office e torna seu trabalho muito mais fácil
- Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
- Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!