Note: The other languages of the website are Google-translated. Back to English
Accedi  \/ 
x
or
x
Registrati  \/ 
x

or

Come trasporre ogni 5 o n righe da una colonna a più colonne?

doc traspone ogni 5 righe 1

Supponendo di avere dati lunghi nella colonna A, e ora, vuoi trasporre ogni 5 righe dalla colonna A a più colonne, come trasporre da A1: A5 a C6: G6, A6: A10 a C7: G7 e così via come seguente schermata mostrata. Come potresti affrontare questa attività senza copiare e incollare ripetutamente in Excel?

Trasponi ogni 5 on righe da una colonna a più colonne con la formula

Trasponi ogni 5 on righe da una colonna a più colonne con codice VBA

Trasponi ogni 5 on righe da una colonna a più colonne con Kutools per Excel


In Excel, puoi applicare la seguente formula per trasporre ogni n righe da una colonna a più colonne, fai come segue:

1. Immettere la seguente formula in una cella vuota in cui si desidera inserire il risultato, C1, ad esempio, = INDICE ($ A: $ A, RIGA (A1) * 5-5 + COLONNA (A1)), vedi screenshot:

doc traspone ogni 5 righe 2

Osservazioni:: Nella formula sopra, AA è il riferimento di colonna che si desidera trasporre e A1 è la prima cella della colonna utilizzata, il numero 5 indica il numero di colonne che i tuoi dati individueranno, puoi modificarle secondo le tue necessità. E la prima cella dell'elenco deve trovarsi nella prima riga del foglio di lavoro.

2. Quindi trascina il quadratino di riempimento a destra su cinque celle e continua a trascinare il quadratino di riempimento verso il basso nell'intervallo di celle finché non viene visualizzato 0, vedi screenshot:

doc traspone ogni 5 righe 3


Trasforma ogni 5 on righe da una colonna a più colonne:

Per trasformare ogni 5 on righe da una colonna a più colonne, Kutools for Excel's Trasforma intervallo utility può aiutarti a risolvere questo lavoro il più rapidamente possibile. Può anche aiutarti a trasporre un intervallo di dati in una singola riga o colonna. Fai clic per scaricare Kutools per Excel!

doc traspone ogni 5 righe 10

Kutools for Excel: con più di 300 utili componenti aggiuntivi di Excel, liberi di provare senza limitazioni in 30 giorni. Scarica e prova gratuita ora!


Se non puoi applicare correttamente la formula, anche il seguente codice VBA può aiutarti.

1. Tieni premuto il ALT + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. Clic inserire > Moduloe incolla il codice seguente nel file Modulo Finestra.

Codice VBA: trasponi ogni 5 on righe da una colonna a più colonne:

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. Dopo aver incollato il codice, premere F5 tasto per eseguirlo e verrà visualizzata una finestra di messaggio per ricordarti di selezionare la colonna che desideri trasporre, vedi screenshot:

doc traspone ogni 5 righe 4

4. Quindi fare clic OKe seleziona una cella in cui vuoi inserire il risultato in un'altra casella spuntata, vedi screenshot:

doc traspone ogni 5 righe 5

5. E fare clic su OK, i dati nella colonna sono stati convertiti in cinque colonne di cui hai bisogno, vedi screenshot:

doc traspone ogni 5 righe 6

Osservazioni:: Nel codice sopra, puoi cambiare il numero 5 ad altro numero che ti serve.


Se si dispone di Kutools for Excel, Con la sua Trasforma intervallo utility, puoi trasporre rapidamente una colonna o una riga in più colonne e righe.

Kutools for Excel : con oltre 300 utili componenti aggiuntivi di Excel, da provare gratuitamente senza limitazioni in 30 giorni. 

Dopo l'installazione Kutools for Excel, si prega di fare come segue:

1. Seleziona i dati nella colonna, quindi fai clic su Kutools > Range > Trasforma intervallo, vedi screenshot:

2. Nel Trasforma intervallo finestra di dialogo, selezionare Singola colonna nell'intervallo opzione sotto il Tipo di trasformazionee quindi controllare Valore fisso sotto il Righe per record, quindi specifica il numero di colonne in cui desideri trasporre nel file Valore fisso box, vedi screenshot:

doc traspone ogni 5 righe 8

3. E poi clicca Ok pulsante, nella casella spuntata, seleziona una cella per visualizzare il risultato, vedi screenshot:

doc traspone ogni 5 righe 9

4. Quindi fare clic OK e i dati della colonna sono stati trasposti ogni 5 righe come mostrato nella seguente schermata:

doc traspone ogni 5 righe 6

Scarica e prova gratuitamente Kutools per Excel ora!


Kutools for Excel: con più di 300 utili componenti aggiuntivi di Excel, liberi di provare senza limitazioni in 30 giorni. Scarica e prova gratuita ora!

I migliori strumenti per la produttività in ufficio

Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%

  • Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
  • Super Formula Bar (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
  • Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
  • Più di 300 potenti funzionalità. Supporta Office / Excel 2007-2019 e 365. Supporta tutte le lingue. Facile distribuzione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.
scheda kte 201905

Scheda Office porta l'interfaccia a schede a Office e semplifica notevolmente il lavoro

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce centinaia di clic del mouse ogni giorno!
fondo officetab
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Pradeep · 1 years ago
    Hi, How to do this for Colms to rows. Thank you
    • To post as a guest, your comment is unpublished.
      Jan steihn · 11 months ago
      I've rewritten the command to this one:
      =INDEX($A:$A,ROW(A1)+((COLUMN(A1)-2)*5))
      This executes it inverted.
      So:
      1
      2
      3
      4
      5
      6
      7
      8
      9
      ...
      becomes
      1, 6
      2, 7
      3, 8
      4, 9
      5, ...
  • To post as a guest, your comment is unpublished.
    Maha · 1 years ago
    Thanks alot _/\_ Awesome job with =INDEX($A:$A,ROW(B1)*5-5+COLUMN(B1))
    worked perfectly
  • To post as a guest, your comment is unpublished.
    Arun Balaji VN · 1 years ago
    I tried only the the formula option and it worked great. Till now have been using (Transpose formula with ctrl+shift+enter) but there the disadvantage for we have delete many extra rows. when the rows to be transposed for large in the order of lakhs, then deleting them in excel is either impossible or takes a lot of time.
    this approach made the life easier by only copying the required rows... Thanks
  • To post as a guest, your comment is unpublished.
    Sian · 2 years ago
    This is fricking AWESOME!!! Thank you SO much. Your example was exactly what I needed and it worked beautifully.
  • To post as a guest, your comment is unpublished.
    hamidreza · 3 years ago
    =INDEX($A:$A,ROW(A1)*5-5+COLUMN(A1))
    It was very simple and really useful. Thank you so much
  • To post as a guest, your comment is unpublished.
    Thank · 3 years ago
    It was great! Thank you! You saved me hours of manual work!
  • To post as a guest, your comment is unpublished.
    xplode · 3 years ago
    Thank you so much!
    It was really helpful. :)
  • To post as a guest, your comment is unpublished.
    MTVN · 4 years ago
    What formula to transpose every 5 rows to a single column?
  • To post as a guest, your comment is unpublished.
    hgimongu · 4 years ago
    Hi!

    May I ask you how to add Blank cell delimits records, instead of 5 as the data I am handling hasn't got fix number of rows. I believe the part which I should change may be around this part of the code:

    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

    Best
    • To post as a guest, your comment is unpublished.
      Mark.lewis2020 · 11 months ago
      I have the same issue , where the columns are not fixed, and there are empty lines, but I have a same character and end of each data set , that is "=" can I use this as delimiter , that breaks the loop, and next line is considered as new data set ?
    • To post as a guest, your comment is unpublished.
      Mark · 11 months ago
      did you get an answer for the same as i have the same issue , columns are not fixed in numbers, what should I do , can I use a particular character as a delimiter that breaks the loop and count next line and new data set ?