Skip to main content

Come trasporre colonne in righe e inserire nuove righe per riempire i dati verso il basso in Excel?

Author: Sun Last Modified: 2025-08-06

In questo articolo, vi presento un codice VBA per trasporre colonne in righe e inserire nuove righe per riempire i dati verso il basso, come mostrato nello screenshot sottostante. Se siete interessati a questa operazione, andate sotto per ulteriori dettagli.
transpose columns to rows

Trasponi e inserisci righe con VBA


arrow blue right bubble Trasponi e inserisci righe con VBA

Non esiste un modo diretto per trasporre un intervallo e inserire righe per riempire gli stessi dati verso il basso, ma qui posso introdurre un codice VBA per risolvere rapidamente questo compito.

1. Premere i tasti Alt + F11 per aprire la finestra di Microsoft Visual Basic for Applications.

2. Cliccare su Inserisci > Modulo, e incollare il seguente codice VBA nella finestra del Modulo. Vedere lo screenshot:

VBA: Trasponi e inserisci righe.

 Sub TransposeInsertRows()
'UpdatebyExtendoffice20161125
    Dim xRg As Range
    Dim i As Long, j As Long, k As Long
    Dim x As Long, y As Long
    Set xRg = Application.InputBox _
    (Prompt:="Range Selection...", _
    Title:="Kutools For Excel", Type:=8)
    Application.ScreenUpdating = False
    x = xRg(1, 1).Column + 2
    y = xRg(1, xRg.Columns.Count).Column
    For i = xRg(xRg.Rows.Count, 1).Row To xRg(1, 1).Row Step -1
        If Cells(i, x) <> "" And Cells(i, x + 1) <> "" Then
            k = Cells(i, x - 2).End(xlToRight).Column
            If k > y Then k = y
            For j = k To x + 1 Step -1
                Cells(i + 1, 1).EntireRow.Insert
                With Cells(i + 1, x - 2)
                    .Value = .Offset(-1, 0)
                    .Offset(0, 1) = .Offset(-1, 1)
                    .Offset(0, 2) = Cells(i, j)
                End With
                Cells(i, j).ClearContents
            Next j
        End If
    Next i
    Application.ScreenUpdating = True
End Sub

 

copy and paste the vba code into the module

3. Premere F5 per eseguire il codice, quindi selezionare l'intervallo di dati che si desidera trasporre e inserire righe nella finestra di dialogo che appare. Vedere lo screenshot:
vba code to select the data range

4. Cliccare OK. E l'intervallo selezionato è stato convertito come mostrato nello screenshot sottostante.
he selected range has been converted

Nota: prima di eseguire il codice, è meglio salvare una copia dei dati originali.

Suggerimento.Se volete trasporre rapidamente una tabella bidimensionale in una tabella unidimensionale o viceversa, provate ad utilizzare Transpose Table Dimensions di Kutools per Excel, come mostrato nello screenshot seguente. È completamente funzionale senza limitazioni per 30 giorni, scaricate e provate subito gratuitamente.

transpose cross to list by kutools

I migliori strumenti per la produttività in Office

🤖 Kutools AI Aide: Rivoluziona l’analisi dei dati grazie a: Esecuzione intelligente | Genera codice | Crea formule personalizzate | Analizza dati e genera grafici | Richiama Funzioni avanzate
Funzionalità popolari: Trova, evidenzia o identifica duplicati | Elimina righe vuote | Combina colonne o celle senza perdere dati | Arrotonda
Super RICERCA.VERT: Ricerca con criteri multipli    Ricerca valori multipli  |   Ricerca su più fogli   |   Corrispondenza approssimativa ....
Elenco a discesa avanzato: Crea rapidamente un elenco a discesa | Elenco a discesa dipendente | Elenco a discesa a selezione multipla….
Gestione colonne: Aggiungi un numero specifico di colonne | Sposta colonne | Cambia lo stato di visibilità delle colonne nascoste | Confronta intervalli e colonne...
Funzionalità in evidenza: Attenzione della griglia | Visualizzazione di progettazione | Barra delle formule avanzata | Gestione Cartella di lavoro & Foglio di lavoro | Libreria AutoText | Selettore di data | Unisci dati | Crittografa/Decrittografa celle | Invia Email da elenco | Super Filtri | Filtro speciale (filtra grassetto/corsivo/barrato...)...
I15 migliori kit di strumenti:12 strumenti di testo (Aggiungi testo, Elimina Caratteri Specifici, ...) | Oltre50 tipi di grafici (Diagramma di Gantt, ...) | Oltre40 formule utili (Calcola l'età in base alla data di nascita, ...) |19 strumenti di inserimento (Inserisci codice QR, Inserisci immagine dal percorso, ...) |12 strumenti di conversione (Converti in parole, Conversione valuta, ...) |7 strumenti per unire & dividere (Unione avanzata righe, Dividi celle, ...) | ...e altro ancora
Usa Kutools nella lingua che preferisci – supporta Inglese, Spagnolo, Tedesco, Francese, Cinese e oltre40 altre!

Migliora le tue competenze su Excel con Kutools per Excel e sperimenta un nuovo livello di efficienza. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...


Office Tab porta l’interfaccia a schede su Office, rendendo il tuo lavoro molto più semplice

  • Abilita la modifica a schede e la lettura in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, invece che in nuove finestre.
  • Aumenta la tua produttività del50% e ti fa risparmiare centinaia di clic ogni giorno!