#Excel – Come trasporre in Excel (convertire righe in colonne e viceversa)

La trasposizione dei dati in Excel è un problema familiare a molti utenti. Molto spesso dopo aver costruito una tabella complessa risulta evidente che sarebbe più efficiente ruotarla per una migliore analisi o per la trasformazione dei dati in grafici.

In questo articolo, troverete diversi modi per convertire le righe in colonne (o le colonne in righe) in Excel. Queste soluzioni funzionano in tutte le versioni di Excel e coprono molti scenari possibili, spiegano gli errori più comuni e forniscono buoni esempi di utilizzo delle funzioni e delle formule di trasposizione di Excel.

Convertire righe in colonne in Excel utilizzando Incolla speciale (Trasponi)

Supponiamo di aver creato un foglio di calcolo di Excel simile a quello che si vede nella parte superiore dell’immagine qui sotto. I nomi delle regioni sono organizzati in colonne, ma l’elenco potrebbe essere troppo lungo, così, forse, faremmo meglio a cambiare le colonne in righe per adattare la tabella allo schermo:

Convertire righe in colonne in Excel

  1. Selezionate le righe e le colonne che si desidera invertire. Se si desidera ruotare l’intera tabella, ossia tutte le celle con i dati in un foglio di calcolo, premere Ctrl + Home e poi Ctrl + Maiusc + Fine
  2. Copiate le celle selezionate facendo clic destro sulla selezione e scegliendo Copia dal menu contestuale, oppure premendo Ctrl + C, oppure premendo il pulsante Copia nella scheda HOME > gruppo Appunti
  3. Selezionate la prima cella dell’intervallo di destinazione in cui si desidera copiare i dati trasposti
    ATTENZIONE
    E’ importante che selezioniate una cella che non rientra l’intervallo contenente i dati originali, in modo che le aree di copia e di incolla non si sovrappongano. Ad esempio, se si dispone attualmente di 4 colonne e 10 righe, una volta trasposta, la tabella sarà di 10 colonne e 4 righe.
  4. Incollate i dati copiati utilizzando la funzione Incolla speciale > Trasponi. È possibile aprire la finestra di dialogo Incolla speciale in 3 modi:
    • Nel gruppo Appunti della scheda HOME, fate clic sulla piccola freccia nera sotto il pulsante Incolla e selezionate Trasponi
    • Fate clic destro sulla cella di destinazione e scegliete Incolla speciale dal menu contestuale, quindi selezionate Trasponi
    • E, infine, il modo più veloce è quello di premere CTRL + ALT + V, selezionare Trasponi e fare clic su OK

Selezionate Trasponi nella finestra di dialogo Incolla speciale

ATTENZIONE
Se si traspongono celle che contengono formule, assicuratevi che in tutte le celle siano utilizzati riferimenti assoluti (con il segno $). Questo è necessario perché anche le formule saranno trasposte e i riferimenti di cella regolati automaticamente

Come, avete appena visto, la funzione Trasponi di Excel consente di eseguire trasformazioni di righe in colonne (o viceversa) letteralmente in pochi secondi. Credo che questa soluzione sia davvero un buon sistema per procedere se trasporre una tabella è un processo sporadico. Questo sistema copia anche la formattazione originale dei dati, e anche questo depone quindi a suo favore.

Tuttavia, l’approccio di cui sopra presenta due inconvenienti che le impediscono di essere definita una soluzione perfetta per la trasposizione dei dati in Excel:

  • L’opzione di trasposizione non è disponibile quando si copia / incolla una vera e propria Tabella di Excel, contrariamente ad un semplice intervallo. In questo caso, è necessario o copiare la tabella senza intestazioni di colonna, o convertirla in un semplice intervallo (tasto destro del mouse su qualsiasi cella nella tabella e scegliete Tabella > Converti in Intervallo dal menu contestuale)
  • Un altra grave limitazione che ha questo metodo è che crea una copia dei dati originali e ogni volta che si modificano i dati di origine, avreste bisogno di ripetere il processo e trasporre nuovamente la tabella. Nessuno vorrebbe sprecare tempo prezioso nella trasposizione delle stesse righe e colonne più e più volte, giusto?

Come trasporre una tabella collegandola ai dati originali

Vediamo come trasporre righe in colonne in Excel utilizzando la familiare tecnica del copia / incolla collegando le celle trasposte ai dati originali. L’aspetto migliore di questo approccio è che ogni volta che si modificano i dati nella tabella di origine, la tabella trasposta rifletterà automaticamente le modifiche e si aggiornerà di conseguenza.

  1. Copiate le righe che desiderate convertire in colonne (o viceversa)
  2. Selezionate una cella vuota nello stesso o in un altro foglio di lavoro
  3. Aprite la finestra di dialogo Incolla speciale, come spiegato nella soluzione precedente e selezionate “Incolla collegamento” nell’angolo inferiore sinistro della finestra di dialogo
    Aprite la finestra di dialogo Incolla speciale e selezionate Incolla collegamento
    Dovreste ottenere un risultato simile a questo:
    I collegamenti ai dati originali sono copiati in una nuova tabella
  4. Selezionate questa nuova tabella e aprite la finestra di dialogo Trova e sostituisci di Excel
  5. Sostituite tutti i caratteri “=” con “xxx” (in realtà la sostituzione può essere fatta con qualsiasi altro carattere che non sia presente da nessuna parte nei vostri dati)
    Sostituite i caratteri = con qualsiasi altro carattere
    Questo trasformerà la vostra tabella in qualcosa di un po’ orribile, come potete vedere nello screenshot qui sotto, ma non abbiate paura, mancano solo 2 più passaggi al risultato desiderato
    I caratteri = sono stati sostituiti con xxx
  6. Copiate la tabella con i valori “xxx”, e quindi applicate Incolla speciale > Trasponi per convertire le colonne in righe e viceversa
  7. E, infine, aprite ancora una volta la finestra di dialogo Trova e sostituisci per annullare la modifica, vale a dire sostituire tutti i caratteri “xxx” con “=” e ripristinare i collegamenti alle celle originali. Fatto!
    La tebella è stata trasposta con tutti i collegamenti ai dati originari

Si tratta di una soluzione rapida, elegante e senza stress, non è vero? L’unico inconveniente di questo approccio è che la formattazione della tabella originale si perde nel processo e sarà necessario ripristinarla manualmente (vi mostrerò un modo veloce per fare questo più avanti in questo tutorial).

Trasporre dati in Excel utilizzando le formule

Se non siete alla ricerca di sistemi semplici, allora potete utilizzare anche le formule per convertire colonne in righe nelle tabelle di Excel e viceversa.

Convertire righe in colonne utilizzando la funzione MATR.TRASPOSTA

Come suggerisce il SUO nome, la funzione MATR.TRASPOSTA() è appositamente progettata per la trasposizione dei dati. Se non avete molta esperienza con le formule di Excel, in generale, e le funzioni matriciali in particolare, vi invitiamo a seguire attentamente le istruzioni riportate di seguito.

In questo esempio, riprendiamo la stessa tabella vista prima con la superficie e gli abitanti per regione:

La tabella da trasporre

Prima di tutto, è necessario determinare il numero esatto di righe e colonne della tabella. La nostra tabella di esempio ha 21 colonne e 6 righe incluse le intestazioni. Tenendo questi numeri in mente, cominciamo la trasposizione delle righe in colonne.

  1. Contate le celle che desiderate trasporre. Nel nostro caso si tratta di 21 colonne e 6 righe
  2. Selezionate un intervallo di celle vuoto. Poiché la funzione MATR.TRASPOSTA() sposta l’orientamento verticale in orizzontale di un intervallo selezionato, è necessario selezionare tante righe quante sono le colonne della tabella originaria e tante colonne quante sono le righe, rispettivamente. Nel nostro esempio, selezioniamo 6 colonne e 21 righe
  3. Premete F2 per accedere alla modalità di modifica
  4. Scrivete la funzione MATR.TRASPOSTA() e inserite l’intervallo di dati che si desidera trasporre tra parentesi: =MATR.TRASPOSTA(matrice). Nel nostro caso, inseriamo =MATR.TRASPOSTA($A$1:$U$6)
    ATTENZIONE
    Nella funzione MATR.TRASPOSTA() è sempre necessario utilizzare dei riferimenti assoluti
    Scrivere la funzione MATR.TRASPOSTA
  5. Premete CTRL + MAIUSC + INVIO
    INFO
    Avete bisogno di premere Ctrl + Maiusc + Invio perché questa è una funzione matriciale, premendo semplicemente Invio non funzionerebbe

Fatto! I nostri dati sono stati invertiti e noi abbiamo trasposto 21 colonne in 6 colonne, esattamente come volevamo:

La tabella è stata trasposta e noi abbiamo invertito le righe in colonne

Punti di forza della funzione MATR.TRASPOSTA

Il vantaggio principale di utilizzare la funzione MATR.TRASPOSTA è che la tabella ruotata mantiene i collegamento con la tabella di origine e ogni volta che si modificano i dati di origine, la tabella trasposta cambierà di conseguenza.

Punti di debolezza della funzione MATR.TRASPOSTA

  • La formattazione della tabella originale non viene salvata nella tabella convertita, come vedete nello screenshot sopra
  • Se ci fossero  delle celle vuote nella tabella originale, le celle trasposte conterrebbero invece degli 0 (zero)
  • Non è possibile modificare nessuna cella della tabella convertita perché la funzione MATR.TRASPOSTA è molto dipendente dai dati di origine. Se si tenta di modificare il valore di qualche cella, si finirà per ottenere l’errore “Impossibile modificare parte di una matrice.”

Riepilogando, per quanto la funzione MATR.TRASPOSTA sia relativamente facile da usare, manca certamente di flessibilità e, pertanto, in molte situazioni potrebbe non essere la soluzione migliore.

INFO
Se voleste approfondire l’utilizzo delle matrici in Excel, vi invitiamo alla lettura di questa serie di articoli che offre una panoramica delle funzionalità di questa caratteristica di Excel:

Trasformare righe in colonne / colonne in righe utilizzando la funzione INDIRETTO

Questo metodo di conversione di colonne in righe e viceversa è praticamente simile a quello precedente. Il vantaggio principale rispetto alla funzione MATR.TRASPOSTA di cui sopra è che permette di effettuare modifiche nella tabella trasposta, mantenendo allo stesso tempo la connessione con la tabella originale.

In questo esempio useremo una tabella più piccola in modo da concentrarci sul processo di trasposizione piuttosto che sui dati, in quanto useremo una combinazione delle funzioni INDIRETTO() e INDIRIZZO(), che potrebbe risultare un po' difficile da comprendere.

Supponiamo che abbiate dei dati disposti in 4 colonne (A - D) e 5 righe (1 - 5):

Righe da convertire in colonne usando la funzione INDIRETTO

  1. Inserite la formula seguente nella cella più a sinistra dell'intervallo di destinazione, diciamo A8, e premete il tasto Invio:
    [codesyntax lang="text" lines="no" title="Formula di Excel"]
    =INDIRETTO(INDIRIZZO(RIF.COLONNA(A1);RIF.RIGA(A1)))
    [/codesyntax]
    Se i vostri dati iniziano in qualche riga diversa da 1 e colonna diversa da A, dovrete usare una formula un po' più complessa:
    [codesyntax lang="text" lines="no" title="Formula di Excel"]
    =INDIRETTO(INDIRIZZO(RIF.COLONNA(A1)-RIF.COLONNA($A$1)+RIF.RIGA($A$1); RIF.RIGA(A1)-RIF.RIGA($A$1)+RIF.COLONNA($A$1)))
    [/codesyntax]
    Dove A1 è la cella più in alto a sinistra della tabella di origine. Prestate inoltre attenzione all'uso dei riferimenti di cella assoluti e relativi.
  2. Copiate la formula attraverso l'intervallo in cui si desidera inserire i dati trasposti, trascinando, come al solito, la piccola croce nera nell'angolo in basso a destra di una cella selezionata o di un intervallo di celle
    Copiate la formula nell'intervallo di celle in cui volete far apparire i dati trasposti

Questo è tutto! Nella tabella appena creata, tutte le colonne vengono commutate in righe.

Tuttavia, le celle trasposte possono sembrare molto semplici e "noiose", rispetto ai dati originali.

La formattazione dei dati trasposti è andata persa

Ma non siate delusi, questo non è un vero problema. Si può facilmente ripristinare la formattazione in questo modo:

  • Copiate la tabella originale;
  • Selezionate la tabella trasposta;
  • Tasto destro del mouse sulla tabella trasposta e scegliete "Formattazione" in Opzioni Incolla.

Riassumendo, INDIRETTO sembra essere un modo più flessibile per trasformare righe in colonne in Excel rispetto alla funzione MATR.TRASPOSTA.

Vantaggi: si può facilmente modificare qualsiasi cella nella tabella trasposta che, allo stesso tempo, rimane collegata alla tabella originale e viene aggiornata automaticamente ogni volta che si apportano modifiche ai dati di origine.

Carenze: riesco a vedere una sola - la formattazione dei dati originali non viene salvata. Anche se è possibile ripristinarla rapidamente, come indicato sopra.

Funzioni INDIRETTO e INDIRIZZO - Sintassi e logica

La funzione INDIRETTO(), come suggerisce il nome, viene utilizzata per fare riferimento indirettamente ad una cella. Ad esempio, se si vuole avere il valore della cella B1 nella cella A8, allora si inserisce questa formula in A8 =INDIRETTO("B1").

La sintassi della funzione INDIRETTO

Ma la vera potenza della funzione INDIRETTO() è che può trasformare qualsiasi stringa in un riferimento, comprese stringhe che si costruiscono utilizzando altre funzioni o i valori di altre celle. E questo è esattamente ciò che ci accingiamo a fare. Se riuscite a seguire fino a qui, capirete tutto il resto con facilità 🙂

Come ricorderete, abbiamo utilizzato altre tre funzioni nella formula: INDIRIZZO, RIF.COLONNA e RIF.RIGA.

La funzione INDIRIZZO viene utilizzata per ottenere l'indirizzo di una cella dai numeri di riga e colonna specificati. Ad esempio, INDIRIZZO(8,1) restituisce $A$8.

La funzione RIF.COLONNA restituisce il numero di colonna del riferimento di cella dato. Ad esempio, =RIF.COLONNA(A3) restituisce 1, in quanto la colonna A è la prima colonna. Come si può facilmente intuire, la funzione RIF.RIGA funziona esattamente allo stesso modo, ma per le righe.

E ora, vi ricordo l'intera formula che abbiamo usato per convertire le righe in colonne del nostro foglio di lavoro di Excel: =INDIRETTO(INDIRIZZO(RIF.COLONNA(A1);RIF.RIGA(A1)))

Come potete vedere, nella funzione INDIRIZZO, specifichiamo prima RIF.COLONNA(A1) e poi RIF.RIGA(A1), ed è questo che permette il trucco! Ricordate, la funzione INDIRIZZO interpreta il primo numero come un numero di riga, e il secondo come numero di colonna. In altre parole, la funzione INDIRIZZO prende il numero di colonna restituito dalla funzione RIF.COLONNA e lo trasforma in un numero di riga, poi prende un numero di riga e lo trasforma in colonna, cioè traspone righe in colonne.

Ora che sapete che cosa fa ogni funzione, cerchiamo di riassumere tutta la logica: le funzioni RIF.COLONNA e RIF.RIGA restituiscono rispettivamente i numeri di colonna e di riga -> la funzione INDIRIZZO converte le colonne in riga e le righe in colonna -> la funzione INDIRETTO restituisce i dati "ruotati" in un'altra cella nel foglio di calcolo di Excel. Niente di così terribile, non è vero?

E questo è tutto quello che ho da dire sulla conversione di righe in colonna e colonne in righe in Excel. Speriamo che abbiate trovato la soluzione che state cercando.

Grazie per la lettura!

My Agile Privacy
Questo sito utilizza cookie tecnici e di profilazione. Cliccando su accetta si autorizzano tutti i cookie di profilazione. Cliccando su rifiuta o la X si rifiutano tutti i cookie di profilazione. Cliccando su personalizza è possibile selezionare quali cookie di profilazione attivare.
Attenzione: alcune funzionalità di questa pagina potrebbero essere bloccate a seguito delle tue scelte privacy
     Scarica il nostro ebook gratuito     

Unisciti a oltre 35.000 professionisti
che hanno già scelto di semplificare il proprio lavoro
e aumentare la produttività con la nostra newsletter!

Scarica l’ebook con i
migliori trucchi e suggerimenti per Excel
selezionati per te da Excel Academy

Download