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-05-29

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 di Kutools
Funzionalità popolari: Trova, evidenzia o contrassegna duplicati | Elimina righe vuote | Unisci colonne o celle senza perdere dati | Arrotonda...
Super RICERCA.VERT: Ricerca VERT con criteri multipli | Ricerca VERT con 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 multi-selezione...
Gestione Colonne: Aggiungi un numero specifico di colonne | Sposta colonne | Attiva/disattiva la 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 e Foglio di lavoro | Libreria AutoText | Selettore di data | Unisci dati | Crittografa/Decrittografa celle | Invia Email tramite elenco | Super Filtri | Filtro speciale (filtra grassetto/corsivo/barrato...) ...
Top15 set di strumenti:12 strumenti di testo (Aggiungi testo, Elimina Caratteri Specifici, ...) | Oltre50 tipi di grafici (Diagramma di Gantt, ...) | Oltre40 formule pratiche (Calcola l'età in base alla data di nascita, ...) |19 strumenti di inserimento (Inserisci codice QR, Inserisci Immagine da percorso, ...) |12 strumenti di conversione (Converti in parole, Conversione valuta, ...) |7 strumenti di unione e divisione (Unione avanzata righe, Dividi celle, ...) | ... e molto altro

Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un'efficienza mai vista prima. 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 in Office e rende il tuo lavoro molto più semplice

  • 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, invece che in nuove finestre.
  • Aumenta la tua produttività del50% e riduce centinaia di clic del mouse ogni giorno!