VBA per scorrere le righe di un intervallo in Excel (6 esempi)

  • Condividi Questo
Hugh West

In questa esercitazione, verrà illustrato come usare VBA per scorrere le righe in un intervallo in excel. Utilizziamo i cicli per evitare di fare sempre la stessa cosa. Mentre lavoriamo in Microsoft Excel ci si può trovare in una situazione in cui si deve eseguire lo stesso compito più volte. Si può fare facilmente utilizzando i cicli in VBA In questo articolo dimostreremo 6 esempi per scorrere le righe in excel con VBA Il ciclo che utilizzeremo in tutti gli esempi è il ciclo ' Ciclo For-Next '.

Scarica il quaderno di esercizi

Il libro di esercizi può essere scaricato da qui.

VBA Loop Through Rows in Range.xlsm

6 esempi per eseguire il loop delle righe in un intervallo con VBA in Excel

Per illustrare gli esempi di questa esercitazione, utilizzeremo il seguente set di dati. Il set di dati contiene gli importi delle vendite per i primi due mesi dell'anno. 5 venditori .

1. Utilizzare VBA in Range con la variabile Range per eseguire il loop delle righe

Nel primo esempio, utilizzeremo la variabile range per eseguire un ciclo di righe nell'intervallo utilizzando VBA in excel. Applicheremo un VBA nel seguente set di dati.

Vediamo i passaggi per eseguire questo esempio.

FASI:

  • Per iniziare, passare al foglio di lavoro attivo ' Gamma Variabile '.
  • Inoltre, fare clic con il tasto destro del mouse e selezionare l'opzione ' Codice Si può anche premere Alt + F11 per aprirlo.

  • L'azione sopra descritta apre una finestra di codice per quel foglio di lavoro.
  • Inoltre, digitare il codice nella finestra del codice:
 Sub VBA_Loop_through_Rows() Dim w As Range For Each w In Range("B5:D9").Rows w.Cells(1).Interior.ColorIndex = 35 Next End Sub 
  • Quindi, fare clic sul pulsante Correre o premere F5 per eseguire il codice.

  • Alla fine si otterranno risultati come la seguente schermata.

Per saperne di più: Excel VBA: ciclo delle colonne nell'intervallo (5 esempi)

2. Applicare VBA per eseguire il loop delle righe in un intervallo con una variabile numerica

Un'altra opzione per scorrere le righe di un intervallo è quella di selezionare la variabile. Nel secondo esempio, applicheremo il metodo VBA nel seguente set di dati per scorrere le righe in un intervallo con variabili numeriche.

Vediamo i passaggi per eseguire questo metodo.

FASI:

  • Primo, fare clic con il tasto destro del mouse sul foglio attivo denominato ' Valore numerico '.
  • Quindi, selezionare l'opzione ' Codice '.

  • Questa azione aprirà una finestra di codice per il foglio di lavoro in questione. Si può anche premere Alt + F11 per aprire la finestra del codice.
  • digitate il seguente codice nella finestra:
 Sub VBA_Numeric_Variable() Dim w As Integer With Range("B5").CurrentRegion For w = 1 To .Columns.Count .Columns(w).NumberFormat = "$0.00" Next End With End Sub 
  • Successivamente, fare clic su Correre o premere il tasto F5 per eseguire il codice.

  • Infine, si possono vedere risultati come la seguente immagine. Il codice precedente cambia il formato del numero in punti decimali.

Ulteriori informazioni: VBA per scorrere le righe e le colonne di un intervallo in Excel (5 esempi)

3. Excel VBA nell'intervallo selezionato dall'utente per eseguire il loop delle righe nell'intervallo

Nel terzo esempio, utilizzeremo VBA in un intervallo selezionato dall'utente per eseguire un ciclo di righe in un intervallo. In questo modo, l'utente potrà applicare un ciclo in un'area selezionata del set di dati.

Vediamo i passaggi associati a questo esempio.

FASI:

  • All'inizio, selezionare l'intervallo di celle ( D5:D9 ).

  • Il prossimo, fare clic con il tasto destro del mouse sul foglio attivo denominato ' Utente selezionato Selezionare l'opzione ' Codice '.

  • Il comando precedente aprirà un file VBA per il foglio di lavoro attivo. È anche possibile aprire la finestra del codice premendo Alt + F11 Inserire il seguente codice nella finestra vuota del codice:
 Sub VBA_User_Selection() Dim w As Variant Set xRange = Selection For Each w In xRange MsgBox "Cell value = " & w.Value Next w End Sub 
  • Quindi, per eseguire il codice di quel foglio di lavoro, fate clic sul pulsante Correre o premere il tasto F5 chiave.

  • Viene quindi visualizzata una casella di messaggio che mostra il primo valore dell'intervallo selezionato.

  • Inoltre, se si fa clic su OK restituirà il secondo valore dell'intervallo selezionato, ovvero la cella D6 .

  • Questo processo continuerà fino all'ultimo valore dell'intervallo selezionato, ovvero la cella D9 .

Per saperne di più: Come usare VBA per contare le righe nell'intervallo con i dati in Excel (5 macro)

Letture simili

  • Come usare VBA per selezionare l'intervallo dalla cella attiva in Excel (3 metodi)
  • Macro di Excel: ordinamento di più colonne con intervallo dinamico (4 metodi)
  • Come convertire un intervallo in una matrice in Excel VBA (3 modi)

4. Eseguire il loop delle righe in un intervallo dinamico con VBA

Nel quarto esempio, applicheremo VBA per scorrere le righe in un intervallo dinamico. Questo esempio è leggermente diverso dai precedenti: potremo personalizzare l'intervallo nel ciclo per il foglio di lavoro excel. Utilizzeremo il seguente dataset per illustrare questo metodo. Nel seguente dataset, riempiremo i valori dell'intervallo ( B8:C12 ) con un valore specifico.

Per eseguire questo metodo è sufficiente seguire i passaggi indicati di seguito.

FASI:

  • In primo luogo, il valore di ingresso 6 in cella B1 e C in cella B2 .
  • In secondo luogo, fare clic con il tasto destro del mouse sulla cella attiva e selezionare l'opzione ' Codice '.

  • Questo comando aprirà un file VBA per il foglio di lavoro attivo. Un altro modo per aprire la finestra del codice è quello di premere Alt + F11 .
  • In terzo luogo, inserire il seguente codice nella finestra del codice:
 Sub Dynamic_Range() Dim xRange As String xRange = "B8:" + Worksheets("Dynamic Range").Cells(2, 2).Value + _ CStr(3 + Worksheets("Dynamic Range").Cells(1, 2).Value) For Each Row In Range(xRange) For Each Cell In Row Cell.Value = "$2500.00" Next Cell Next Row End Sub 
  • Ora, per eseguire il codice, fare clic sul pulsante Correre o premere il tasto F5 chiave.

  • Di conseguenza, il set di dati si riempie con il valore $2500.00 nel modo seguente.

NOTA:

Nell'immagine precedente, il valore 6 rappresenta le prime due righe dell'intervallo ( B8:B9 ).

  • Infine, inserire il valore 9 in cella B1 invece di 6 I risultati sono visibili nella seguente immagine.

5. Inserire VBA per eseguire il loop su tutta la riga dell'intervallo

Nel quinto esempio, vedremo come applicare il metodo VBA per scorrere l'intera riga nell'intervallo. Questo esempio troverà la posizione di un valore specifico da una o più righe selezionate.

Vediamo quindi i passaggi da seguire per eseguire questo esempio.

FASI:

  • Per cominciare, fare clic con il tasto destro del mouse sul foglio attivo denominato ' Intera fila Selezionare l'opzione ' Codice '.

  • Il comando precedente apre una finestra vuota VBA finestra del codice per il foglio di lavoro attivo. Possiamo ottenere questa finestra del codice anche premendo Alt + F11 .
  • Quindi, inserire il seguente codice nella finestra del codice:
 Sub VBA_Loop_Entire_Row() Dim w As Range For Each w In Range("5:9") If w.Value = "Chris" Then MsgBox "Chris found at " & w.Address End If Next w End Sub 
  • Quindi, fare clic sul pulsante Correre o premere il tasto F5 per eseguire il codice.

  • Nell'immagine precedente, il valore evidenziato ' Chris ' indica il valore da ricercare. Valore dell'intervallo ' 5:9 ' indica che cercheremo il valore nell'intervallo di celle ( B5:B9 ).
  • Infine, un messaggio indica che il valore ' Chris ' si trova nella cella B6 .

Per saperne di più: Come utilizzare VBA per ogni riga di un intervallo in Excel

6. Eseguire un ciclo su ogni n-esima riga dell'intervallo con Excel VBA

Nell'ultimo esempio, applicheremo VBA per scorrere ogni n-esimo Nel seguente set di dati, applicheremo l'ombreggiatura del colore alle righe dispari del nostro intervallo di dati.

Vediamo quindi i passaggi per eseguire questo metodo.

FASI:

  • Primo, fare clic con il tasto destro del mouse sul foglio attivo denominato ' n-esima riga Selezionare l'opzione ' Codice '.

  • Successivamente, si apre una finestra vuota VBA La finestra del codice per quel foglio di lavoro può essere ottenuta anche premendo Alt + F11 .
  • Digitare quindi il seguente codice nella finestra del codice:
 Sub ShadeRows1() Dim r As Long With Range("B5").CurrentRegion For r = 1 To .Rows.Count If r / 2 = Int(r / 2) Then 'righe pari .Rows(r).Interior.ColorIndex = 43 End If Next End With End Sub 
  • A questo punto, fare clic sul pulsante Correre o premere il tasto F5 per eseguire il codice.

  • Infine, si può notare che il codice di cui sopra esegue la sfumatura solo delle righe di numero dispari del nostro set di dati.

Per saperne di più: Excel VBA per scorrere l'intervallo fino alla cella vuota (4 esempi)

Conclusione

In conclusione, questo tutorial fornisce 6 Esempi di looping tra le righe in un intervallo con VBA Scarica il foglio di lavoro di esercitazione contenuto in questo articolo per mettere alla prova le tue abilità. Se hai domande, lascia un commento nel riquadro qui sotto. Il nostro team cercherà di rispondere al tuo messaggio il più presto possibile. Tieni d'occhio altri inventivi Microsoft Excel soluzioni in futuro.

Hugh West è un istruttore e analista di Excel di grande esperienza con oltre 10 anni di esperienza nel settore. Ha conseguito una laurea in Contabilità e Finanza e un Master in Economia Aziendale. Hugh ha una passione per l'insegnamento e ha sviluppato un approccio didattico unico che è facile da seguire e capire. La sua conoscenza approfondita di Excel ha aiutato migliaia di studenti e professionisti in tutto il mondo a migliorare le proprie competenze ed eccellere nella propria carriera. Attraverso il suo blog, Hugh condivide le sue conoscenze con il mondo, offrendo esercitazioni gratuite su Excel e formazione online per aiutare le persone e le aziende a raggiungere il loro pieno potenziale.