Como empilhar colunas da esquerda para a direita em uma única coluna no Excel?
Suponha que existam várias colunas e o objetivo é empilhar as colunas da esquerda para a direita em uma única coluna, conforme mostrado na captura de tela abaixo. Além de mover as colunas manualmente uma por uma, existem truques para resolver isso no Excel?
Empilhar colunas da esquerda para a direita em uma coluna com VBA
Empilhar colunas da esquerda para a direita em uma coluna com Kutools para Excel
Empilhar colunas da esquerda para a direita em uma coluna com VBA
No Excel, não há função interna que possa lidar com essa tarefa, mas o código VBA pode ajudá-lo.
1. Pressione as teclas Alt +F11, depois, na janela Microsoft Visual Basic for Applications, clique em Inserir > Módulo para criar um novo módulo em branco.
2. Copie e cole o código abaixo no Módulo.
VBA: Empilhar colunas em uma
Sub StackColumns()
'UpdatebyExtendoffice20180814
Dim xSRg, xDRg As Range
Dim xDWS As Worksheet
Dim xIntDR, xIntDC, xI As Long
Dim xFNumR, xFNumC As Long
On Error GoTo Err1
Set xSRg = Application.InputBox("Select Columns:", "Kutools for Excel", xTxt, , , , , 8)
If xSRg Is Nothing Then
Err1:
Application.ScreenUpdating = True
Exit Sub
End If
Set xDRg = Application.InputBox("Select a cell to place result:", "Kutools for Excel", xTxt, , , , , 8)
If xDRg Is Nothing Then
Exit Sub
End If
Application.ScreenUpdating = False
Set xDWS = xDRg.Worksheet
xIntDR = xDRg.Row
xIntDC = xDRg.Column
xI = 0
For xFNumC = 1 To xSRg.Columns.Count
For xFNumR = 1 To xSRg.Rows.Count
Set xDRg = xDWS.Cells(xIntDR + xI, xIntDC)
xDRg.Value = xSRg.Cells(xFNumR, xFNumC).Value
xI = xI + 1
Next xFNumR
Next xFNumC
Application.ScreenUpdating = True
End Sub
3. Pressione F5 para executar o código; uma caixa de diálogo aparecerá para você selecionar as colunas que deseja empilhar em uma.
4. Clique OK, selecione uma célula para colocar o resultado.
5. Clique OK para concluir. Agora, as colunas selecionadas foram empilhadas em uma única coluna.
Empilhar colunas da esquerda para a direita em uma coluna com Kutools para Excel
Se você tiver o Kutools para Excel instalado no Excel, poderá usar o utilitário Transformar Intervalo para lidar com essa tarefa.
Após instalar o Kutools para Excel, faça o seguinte:
1. Selecione as colunas que deseja empilhar, clique Kutools > Intervalo > Transformar Intervalo.
2. No Transformar Intervalo diálogo, marque a caixa de seleção Intervalo para Linha Única caixa de seleção, clique Ok.
3. Na caixa de diálogo que surge, selecione uma célula para colocar o resultado, clique OK.
Agora as colunas foram transformadas em uma única linha.
4. Selecione a linha única, pressione Ctrl + C para copiá-la, e selecione outra célula que colocará a coluna empilhada, clique com o botão direito e selecione Transpor(T) no menu de contexto.
Agora a linha única foi transposta para uma coluna empilhada.
Melhores Ferramentas de Produtividade para Office
Potencialize suas habilidades no Excel com o Kutools para Excel e experimente uma eficiência sem igual. O Kutools para Excel oferece mais de300 recursos avançados para aumentar sua produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
O Office Tab traz interface com abas para o Office e facilita muito o seu trabalho
- Habilite a edição e leitura com abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas abas na mesma janela, em vez de abrir novas janelas.
- Aumente sua produtividade em50% e reduza centenas de cliques do mouse todos os dias!