Como transpor a cada 5 ou n linhas de uma coluna para várias colunas?

Transpor a cada 5 ou n linhas de uma única coluna para várias colunas no Excel pode ser muito útil ao reorganizar dados para análise ou relatórios. Suponha que você tenha dados longos na coluna A e agora deseja transpor a cada 5 linhas da coluna A para várias colunas, como transpor A1:A5 para C6:G6, A6:A10 para C7:G7 e assim por diante, conforme mostrado na captura de tela à esquerda. Essa tarefa pode ser abordada usando diferentes métodos, cada um com suas próprias vantagens. Vamos passar por um guia detalhado passo a passo sobre como realizar isso.
Transpor a cada 5 ou n linhas de uma coluna para várias colunas
Transpor a cada 5 ou n linhas de uma coluna para várias colunas com fórmula
No Excel, você pode aplicar a seguinte fórmula para transpor a cada n linhas de uma coluna para várias colunas, faça o seguinte:
1. Insira a seguinte fórmula em uma célula em branco onde você deseja colocar o resultado.
=INDEX($A:$A,ROW(A1)*5-5+COLUMN(A1))

2. Em seguida, arraste a alça de preenchimento para a direita até cinco células, e continue arrastando a alça de preenchimento para baixo até o intervalo de células até que exiba 0, veja a captura de tela:

Transpor a cada 5 ou n linhas de uma coluna para várias colunas com Kutools para Excel
Você está frustrado com a transposição de dados do Excel de uma coluna para várias colunas? O recurso "Transformar Intervalo" do "Kutools para Excel" está aqui para resolver seus problemas! Se você precisa transpor a cada 5 linhas ou um número personalizado de linhas, nós temos você coberto. A conversão flexível de linhas permite que você escolha livremente o número de linhas para transpor de uma coluna para várias colunas. É simples e rápido, não requer operações complexas — apenas alguns cliques para fazer.
Após instalar o "Kutools para Excel", faça o seguinte:
1. Selecione os dados na coluna e, em seguida, clique em "Kutools" > "Intervalo" > "Transformar Intervalo", veja a captura de tela:

2. Na caixa de diálogo "Transformar Intervalo", selecione a opção "Coluna Única para Intervalo" sob o "Tipo de Transformação", e depois marque "Valor Fixo" sob o "Linhas por Registro", então especifique o número de colunas que você deseja transpor no campo "Valor Fixo", veja a captura de tela:

3. E depois clique no botão "Ok", na caixa que apareceu, selecione uma célula para saída do resultado, veja a captura de tela:

4. Em seguida, clique no botão "OK", e seus dados da coluna foram transpostos a cada 5 linhas conforme mostrado na seguinte captura de tela:

Transpor a cada 5 ou n linhas de uma coluna para várias colunas com código VBA
Se você não conseguir aplicar a fórmula corretamente, o seguinte código VBA também pode ajudá-lo.
1. Mantenha pressionadas as teclas "ALT" + "F11" para abrir a janela "Microsoft Visual Basic for Applications".
2. Clique em "Inserir" > "Módulo" e cole o seguinte código na janela "Módulo".
Código VBA: Transpor a cada 5 ou n linhas de uma coluna para várias colunas:
Public Sub TransposeData()
'updateby Extendoffice
Dim xLRow As Long
Dim xNRow As Long
Dim i As Long
Dim xUpdate As Boolean
Dim xRg As Range
Dim xOutRg As Range
Dim xTxt As String
On Error Resume Next
xTxt = ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Please select data range(only one column):", "Kutools for Excel", xTxt, , , , , 8)
Set xRg = Application.Intersect(xRg, xRg.Worksheet.UsedRange)
If xRg Is Nothing Then Exit Sub
If (xRg.Columns.Count > 1) Or _
(xRg.Areas.Count > 1) Then
MsgBox "the used range only contain one column", , "Kutools for Excel"
Exit Sub
End If
Set xOutRg = Application.InputBox("please select output range(specify one cell):", "Kutools for Excel", xTxt, , , , , 8)
If xOutRg Is Nothing Then Exit Sub
Set xOutRg = xOutRg.Range(1)
xUpdate = Application.ScreenUpdating
Application.ScreenUpdating = False
xLRow = xRg.Rows.Count
For i = 1 To xLRow Step 5
xRg.Cells(i).Resize(5).Copy
xOutRg.Offset(xNRow, 0).PasteSpecial Paste:=xlPasteAll, Transpose:=True
xNRow = xNRow + 1
Next
Application.ScreenUpdating = xUpdate
End Sub
3. Após colar o código, pressione a tecla "F5" para executá-lo, e uma caixa de aviso aparecerá para lembrá-lo de selecionar a coluna que deseja transpor, veja a captura de tela:

4. Em seguida, clique em "OK", e selecione uma célula onde deseja colocar o resultado em outra caixa que apareceu, veja a captura de tela:

5. E clique em "OK", os dados na coluna foram convertidos para cinco colunas que você precisa, veja a captura de tela:

Para transpor a cada 5 ou n linhas de uma coluna para várias colunas no Excel, este artigo apresenta três métodos eficazes. Cada um desses métodos oferece uma abordagem diferente para reorganizar dados no Excel, atendendo a diferentes níveis de familiaridade do usuário com ferramentas e programação do Excel. Se você estiver interessado em explorar mais dicas e truques do Excel, nosso site oferece milhares de tutoriais.
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!