Skip to main content

Come spostare un'intera riga in un altro foglio in base al valore della cella in Excel?

Author: Siluvia Last Modified: 2025-05-29

Per spostare un'intera riga in un altro foglio in base al valore della cella, questo articolo ti sarà di aiuto.

Sposta un'intera riga in un altro foglio in base al valore della cella con il codice VBA
Sposta un'intera riga in un altro foglio in base al valore della cella con Kutools per Excel


Sposta un'intera riga in un altro foglio in base al valore della cella con il codice VBA

Come mostrato nello screenshot sottostante, devi spostare l'intera riga da Foglio1 a Foglio2 se esiste una parola specifica “Done” nella colonna C. Puoi provare il seguente codice VBA.

sample data

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

2. Nella finestra Microsoft Visual Basic for Applications, clicca su Inserisci > Modulo. Poi copia e incolla il seguente codice VBA nella finestra.

Codice VBA 1: Sposta un'intera riga in un altro foglio in base al valore della cella

Sub Cheezy()
'Updated by Kutools for Excel 2017/8/28
    Dim xRg As Range
    Dim xCell As Range
    Dim I As Long
    Dim J As Long
    Dim K As Long
    I = Worksheets("Sheet1").UsedRange.Rows.Count
    J = Worksheets("Sheet2").UsedRange.Rows.Count
    If J = 1 Then
       If Application.WorksheetFunction.CountA(Worksheets("Sheet2").UsedRange) = 0 Then J = 0
    End If
    Set xRg = Worksheets("Sheet1").Range("C1:C" & I)
    On Error Resume Next
    Application.ScreenUpdating = False
    For K = 1 To xRg.Count
        If CStr(xRg(K).Value) = "Done" Then
            xRg(K).EntireRow.Copy Destination:=Worksheets("Sheet2").Range("A" & J + 1)
            xRg(K).EntireRow.Delete
            If CStr(xRg(K).Value) = "Done" Then
                K = K - 1
            End If
            J = J + 1
        End If
    Next
    Application.ScreenUpdating = True
End Sub

Nota: Nel codice, Foglio1 è il foglio di lavoro che contiene la riga che desideri spostare. E Foglio2 è il foglio di destinazione dove posizionerai la riga. “C:C” è la colonna che contiene un certo valore, e la parola “Done” è il valore specifico in base al quale sposterai la riga. Cambiali in base alle tue esigenze.

3. Premi il tasto F5 per eseguire il codice, quindi la riga che soddisfa i criteri in Foglio1 verrà immediatamente spostata in Foglio2.

run the coe to move the specific rows to another sheet

Nota: Il codice VBA sopra cancellerà le righe dai dati originali dopo averle spostate in un foglio di lavoro specificato. Se vuoi solo copiare le righe in base al valore della cella invece di eliminarle, applica il seguente codice VBA 2.

Codice VBA 2: Copia un'intera riga in un altro foglio in base al valore della cella

Sub MoveRowBasedOnCellValue()
'Updated by Extendoffice 2017/11/10
    Dim xRg As Range
    Dim xCell As Range
    Dim I As Long
    Dim J As Long
    Dim K As Long
    I = Worksheets("Sheet1").UsedRange.Rows.Count
    J = Worksheets("Sheet2").UsedRange.Rows.Count
    If J = 1 Then
    If Application.WorksheetFunction.CountA(Worksheets("Sheet2").UsedRange) = 0 Then J = 0
    End If
    Set xRg = Worksheets("Sheet1").Range("C1:C" & I)
    On Error Resume Next
    Application.ScreenUpdating = False
    For K = 1 To xRg.Count
        If CStr(xRg(K).Value) = "Done" Then
            xRg(K).EntireRow.Copy Destination:=Worksheets("Sheet2").Range("A" & J + 1)
            J = J + 1
        End If
    Next
    Application.ScreenUpdating = True
End Sub

Sposta un'intera riga in un altro foglio in base al valore della cella con Kutools per Excel

Se sei nuovo nel codice VBA, qui ti presento lo strumento Seleziona celle specifiche di Kutools per Excel. Con questo strumento, puoi facilmente selezionare tutte le righe in base a un determinato valore di cella o diversi valori di cella in un foglio di lavoro e copiare le righe selezionate nel foglio di lavoro di destinazione come necessario. Procedi come segue.

Kutools per Excel offre oltre 300 funzionalità avanzate per semplificare compiti complessi, aumentando creatività ed efficienza. Integrato con capacità di intelligenza artificiale, Kutools automatizza le attività con precisione, rendendo la gestione dei dati senza sforzo. Informazioni dettagliate su Kutools per Excel... Prova gratuita...

1. Seleziona la lista delle colonne che contiene il valore della cella in base al quale sposterai le righe, poi clicca su Kutools > Seleziona > Seleziona celle specifiche. Vedi screenshot:

click Select Specific Cells feature of kutools

2. Nella finestra di dialogo Seleziona celle specifiche che si apre, scegli Riga intera nella sezione Tipo di selezione, seleziona Uguale a nell'elenco a discesa Tipo specifico, inserisci il valore della cella nella casella di testo e poi clicca sul pulsante OK.

Un'altra finestra di dialogo Seleziona celle specifiche si apre per mostrarti il numero di righe selezionate, e nel frattempo, tutte le righe contenenti il valore specificato nella colonna selezionata sono state selezionate. Vedi screenshot:

set options in the Select Specific Cells dialog box

3. Premi i tasti Ctrl + C per copiare le righe selezionate, e poi incollale nel foglio di lavoro di destinazione di cui hai bisogno.

copy and paste the specific rows to other sheet

Nota: Se vuoi spostare righe in un altro foglio di lavoro in base a due diversi valori di cella. Ad esempio, sposta le righe in base ai valori delle celle "Done" o "Processing", puoi abilitare la condizione Or nella finestra di dialogo Seleziona celle specifiche come mostrato nello screenshot sottostante:

set options in the Select Specific Cells dialog box for two conditions

  Se desideri provare gratuitamente (30-giorno) questa utility, fai clic per scaricarla e poi vai ad applicare il calcolo seguendo i passaggi sopra indicati.


Articoli correlati:

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!