Convertire colonne in righe in Excel: 5 modi per trasporre i dati

2026-02-14 07:48:46 zaki zou

5 modi migliori per trasporre i dati in Excel

Gli utenti di Excel si trovano spesso in situazioni in cui i dati sono strutturati in colonne ma sarebbero più utili in righe, o viceversa. Questa comune sfida di riorganizzazione dei dati può trasformare il modo in cui analizzi e presenti le informazioni. Che tu stia gestendo dati di sondaggi, report finanziari o qualsiasi set di dati che necessita di un riorientamento, imparare a convertire le colonne in righe in Excel è un'abilità essenziale che può far risparmiare ore di lavoro manuale.

In questa guida completa, esploreremo diversi metodi per cambiare le colonne in righe in Excel, dalle tecniche manuali rapide alle soluzioni automatizzate che utilizzano VBA e Python, aiutandoti a trasporre i dati in modo efficiente.


Cosa significa "convertire colonne in righe" in Excel?

La conversione di colonne in righe (o di righe in colonne) in Excel si chiama trasposizione dei dati. Comporta la rotazione del set di dati di 90 gradi, in modo che i valori che si trovavano in colonne verticali diventino righe orizzontali. Ad esempio, se hai i nomi dei prodotti in una colonna e le vendite mensili in righe, la trasposizione li scambierà: i nomi dei prodotti diventeranno righe e le vendite mensili diventeranno colonne, rendendo più facile analizzare le tendenze o creare visualizzazioni come i grafici.

La funzione di trasposizione di Excel è utile per:

  • Ristrutturare i dati per tabelle pivot o report
  • Semplificare la visualizzazione dei dati (ad es. scambiando gli assi X e Y)
  • Organizzare set di dati disordinati in un formato più leggibile
  • Condividere dati con altri che preferiscono un layout diverso

Prerequisiti prima della trasposizione

Per evitare perdite di dati o errori, segui questi rapidi passaggi di preparazione:

  1. Esegui il backup della cartella di lavoro: salva una copia del file prima di trasporre: questo ti protegge se qualcosa va storto.
  2. Separa celle: le celle unite possono interrompere la trasposizione. Separa prima tutte le celle nei dati di origine.
  3. Svuota l'area di destinazione: assicurati che l'area in cui incollerai i dati trasposti sia vuota: Excel sovrascriverà i dati esistenti senza preavviso.
  4. Prendi nota della tua versione di Excel: alcuni metodi (come TRASponi dinamico) funzionano meglio in Excel 365/2021, mentre le versioni precedenti (2019-) richiedono passaggi alternativi con formule di matrice.

Metodo 1: Incolla speciale con trasposizione (il più rapido per dati statici)

Il metodo Incolla speciale con trasposizione è il modo più popolare e diretto per trasformare una colonna di Excel in una riga. È ideale per attività una tantum in cui i dati non cambieranno (dati statici), poiché crea un'istantanea fissa dei dati trasposti.

Guida passo passo:

  • Seleziona i dati di origine: fai clic e trascina per evidenziare le colonne che desideri convertire in righe.
  • Copia i dati: fai clic con il pulsante destro del mouse e seleziona “Copia” o premi “Ctrl+C”. Nota: non utilizzare “Ctrl+X” (Taglia): non funzionerà per la trasposizione.
  • Scegli una cella di destinazione: fai clic sulla cella in cui desideri che inizino le righe trasposte (ad es. C1).
  • Incolla con trasposizione: fai clic con il pulsante destro del mouse e passa il mouse su “Incolla speciale”, quindi seleziona l'opzione “Trasponi” (sembra una griglia ruotata).
  • Finalizza: i dati verranno ora incollati con le colonne convertite in righe. Se necessario, puoi eliminare i dati della colonna originale.

Incolla speciale con trasposizione per convertire colonne in righe in Excel

Pro e contro:

  • ✔ Pro: nessuna formula richiesta, richiede 10 secondi, mantiene la formattazione originale (colori, caratteri, stili di cella) e le formule (con riferimenti adattati).
  • ✘ Contro: statico (nessun aggiornamento automatico se i dati originali cambiano); non funziona con le tabelle di Excel (converti prima le tabelle in intervalli).

Metodo 2: Funzione TRASponi (dinamica, ad aggiornamento automatico)

Per i dati che si aggiornano di frequente, la funzione TRASponi crea un collegamento dinamico tra i dati originali e quelli trasposti: le modifiche alle colonne di origine si riflettono istantaneamente nelle righe trasposte.

Guida passo passo:

  • Seleziona l'intervallo di destinazione: conta le righe/colonne dei dati di origine (ad es. 7 colonne × 2 righe) e seleziona l'orientamento opposto (2 colonne × 7 righe) nell'area di destinazione vuota.
  • Immetti la formula: con l'intervallo selezionato, digita =TRASponi(
  • Seleziona i dati di origine: fai clic e trascina per selezionare l'intervallo di dati originale
  • Completa come formula di matrice: premi “Ctrl+Maiusc+Invio” (Excel 2019 e versioni precedenti) o semplicemente “Invio” (Excel 365 e versioni successive)
  • I tuoi dati sono ora trasposti dinamicamente: le modifiche all'originale si rifletteranno nella versione trasposta

Conversione dinamica da colonna a riga con la funzione TRASponi di Excel

Pro e contro:

  • ✔ Pro: aggiornamenti dinamici, nessuna rielaborazione manuale, funziona con la maggior parte dei tipi di dati (testo, numeri, date).
  • ✘ Contro: non è possibile modificare singole celle nella matrice trasposta; errore #ESPANSIONE! se l'intervallo di destinazione non è vuoto.

Metodo 3: Power Query (ideale per grandi set di dati)

Power Query (chiamato anche Recupera e trasforma) è il potente strumento di trasformazione dei dati di Excel, perfetto per trasporre grandi set di dati, ripetere la stessa trasposizione più volte o pulire i dati prima di trasporli.

Guida passo passo:

  • Importa dati in Power Query: seleziona le colonne di origine (ad es. A1:C7), vai a “Dati” > “Da tabella/intervallo” (Excel creerà una tabella se necessario)
  • Trasponi dati: nell'editor di Power Query, vai a “Trasforma” > “Trasponi”. Le tue colonne si convertiranno istantaneamente in righe
  • Carica i dati trasposti: fai clic su “Home” > “Chiudi e carica”. Excel incollerà le righe trasposte in un nuovo foglio di lavoro (o nella posizione scelta)

Trasponi dati tramite Power Query di Excel

Pro e contro:

  • ✔ Pro: gestisce facilmente grandi set di dati (oltre 1000 righe/colonne), ripetibile (aggiorna con un clic se i dati di origine cambiano), preserva l'integrità dei dati e pulisce i dati contemporaneamente.
  • ✘ Contro: curva di apprendimento leggermente più ripida per i principianti, eccessivo per trasposizioni piccole e una tantum.

Suggerimento pro: la combinazione della trasposizione con altre tecniche di pulizia dei dati, come la rimozione di righe vuote e la regolazione dei tipi di dati (ad es. la conversione di numeri in testo), garantisce che i dati ristrutturati siano rifiniti e pronti per l'analisi, le tabelle pivot e la condivisione.


Metodo 4: Macro VBA (automatizza trasposizioni in batch)

Se devi scambiare automaticamente i dati da colonna a riga in Excel (ad esempio, per più fogli o set di dati), utilizza una semplice macro VBA. Questo metodo è ideale per gli utenti avanzati o per coloro che ripetono regolarmente la stessa attività di trasposizione.

Guida passo passo:

  • Apri l'editor VBA: premi “Alt+F11” per aprire.
  • Inserisci un modulo: fai clic con il pulsante destro del mouse sulla cartella di lavoro in Esplora progetti > Inserisci > Modulo.

Inserisci modulo per VBA

  • Incolla il codice VBA: copia e incolla il seguente codice nel modulo (personalizza gli intervalli secondo necessità):
Sub TransposeColumnsToRows()
    Dim SourceRange As Range
    Dim DestinationCell As Range

    ' Set your source range (adjust as needed)
    Set SourceRange = ThisWorkbook.Sheets("Sheet1").Range("A1:C7")

    ' Set destination cell which is the top-left of where transposed data should go (adjust as needed)
    Set DestinationCell = ThisWorkbook.Sheets("Sheet1").Range("E5")

    ' Transpose the data
    SourceRange.Copy
    DestinationCell.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, _
                                 SkipBlanks:=False, Transpose:=True

    ' Clear clipboard
    Application.CutCopyMode = False

    MsgBox "Transposition complete!", vbInformation
End Sub
  • Esegui la macro: premi “F5” o fai clic sul pulsante "Esegui" (icona di riproduzione verde). Un messaggio ti informerà che le colonne sono state scambiate con le righe.

Cambia più colonne in righe tramite macro VBA

Caratteristiche principali della macro

  • Conserva tutta la formattazione, le formule e i valori delle celle.
  • Riutilizzabile: salva la macro nella tua cartella di lavoro macro personale per utilizzarla in tutti i file di Excel.
  • Personalizzabile: modifica il codice per scorrere più fogli/set di dati (trasposizione in batch).

Pro e contro:

  • ✔ Pro: automatizza le attività in batch, fa risparmiare tempo per le trasposizioni ripetute e funziona con grandi set di dati
  • ✘ Contro: richiede una conoscenza di base di VBA per la modifica, non necessario per compiti semplici.

Metodo 5: Python con Free Spire.XLS (trasposizione programmatica)

Per sviluppatori e analisti di dati che necessitano di trasporre dati senza aprire Excel (ad es. automazione del server) o elaborare in batch centinaia di file, la libreria Free Spire.XLS per Python offre un modo potente per la manipolazione di Excel multipiattaforma (Windows/Mac/Linux)

Script di trasposizione Python

Utilizza lo script seguente per trasporre una colonna in una riga (personalizza percorsi/intervalli secondo necessità):

from spire.xls import *
from spire.xls.common import *

# Create Workbook instance
workbook = Workbook()
# Load an Excel file
workbook.LoadFromFile("input.xlsx")

# Get the first worksheet
worksheet = workbook.Worksheets[0]

# Read all non-empty data and corresponding cell styles from Column 1
col_index = 1
column_data = []

max_row = worksheet.LastRow

for row_index in range(1, max_row + 1):
    cell = worksheet.Range[row_index, col_index]
    if cell.Value is None or str(cell.Value).strip() == "":
        continue
    # Store cell value and its style (preserves formatting like font, color, etc.)
    column_data.append((cell.Value, cell.Style))
    row_index += 1

# Write the saved column data (with styles) to Row 3
target_row = 3
for idx, (value, source_style) in enumerate(column_data):
    target_col = idx + 3  # start writing from Column 3
    target_cell = worksheet.Range[target_row, target_col]

    # Assign the original cell value to the target cell
    target_cell.Value = value
    # Copy the original cell's style
    target_cell.Style = source_style

# Save Excel file and free up memory
workbook.SaveToFile("output.xlsx", ExcelVersion.Version2016)
workbook.Dispose()

print(f"Excel column to row conversion completed!")

Questo codice legge tutti i dati non vuoti (e i relativi stili di cella associati) da una colonna specificata, quindi scrive questi dati di colonna nella riga di destinazione dello stesso foglio di lavoro.

Converti colonne in righe tramite codice Python

Pro e contro

  • ✔ Pro: multipiattaforma, supporto per l'elaborazione in blocco, preserva la formattazione, nessuna installazione di Excel richiesta, scalabile per centinaia di file.
  • ✘ Contro: richiede una conoscenza di base di Python, il livello gratuito ha alcune limitazioni, curva di apprendimento più ripida per i non programmatori.

Oltre alla trasposizione da colonna a riga, puoi anche utilizzare Spire.XLS per Python per applicare la formattazione, unire celle, ordinare i dati o esportare in PDF/CSV—tutto a livello di codice.


Tabella di confronto: scegliere il metodo giusto

Metodo Ideale per Dinamico? Formattazione conservata Excel richiesto Difficoltà
Incolla speciale Attività rapide una tantum Principiante
Funzione TRASponi Report ad aggiornamento in tempo reale ✘ (solo valori) Intermedio
Power Query Lavori grandi o ricorrenti ✔ (aggiorna) Intermedio
VBA Automazione batch ✔ (attivato) Avanzato
Python + Spire.XLS Lato server / in blocco ✔ (riesegui script) No Avanzato

FAQ: Scambiare colonne e righe in Excel

D: Posso trasporre più fogli contemporaneamente?

R: Sì! Utilizza Power Query (per combinare prima i fogli) o Python/Spire.XLS (per scorrere i fogli) per la trasposizione in batch di set di dati simili. VBA può anche essere modificato per scorrere più fogli.

D: La trasposizione dei dati eliminerà le mie colonne originali?

R: No. Tutti e cinque i metodi creano una copia dei dati nel nuovo orientamento di riga. Le colonne originali rimarranno intatte a meno che non le elimini manualmente.

D: Come posso convertire le righe in colonne?

R: Tutti gli stessi metodi funzionano al contrario! Il processo è identico indipendentemente dalla direzione.

D: Posso trasporre dati tra cartelle di lavoro diverse?

R: Sì. Tutti i metodi supportano la trasposizione tra cartelle di lavoro. Per VBA e Python, dovrai specificare correttamente i percorsi delle cartelle di lavoro.

D: Il metodo Python funziona per i file .xlsx e .xls?

R: Sì. Spire.XLS supporta entrambi i formati di Excel (per il formato .xls, utilizzare: ExcelVersion.Version97to2003).


Considerazioni finali

Padroneggiare l'arte di cambiare le colonne in righe in Excel sblocca nuove possibilità per l'analisi e la presentazione dei dati. Che tu scelga la semplicità di Incolla speciale, il dinamismo della funzione TRASponi, la potenza di Power Query, l'automazione di VBA o la flessibilità programmatica di Python con Free Spire.XLS, ora hai un kit di strumenti completo per qualsiasi scenario di trasposizione.

Ogni metodo ha i suoi punti di forza e, incorporando queste tecniche nel tuo flusso di lavoro dei dati, risparmierai tempo, ridurrai gli errori e otterrai una flessibilità senza precedenti nel modo in cui lavori con i dati.


Vedi anche