Excel VBA Do While Loop

Do While Loop significa fare qualcosa mentre la condizione è VERA. È come una funzione logica che funziona in base a VERO o FALSO. Quindi, se la condizione è TRUE, continuerà a eseguire l'istruzione all'interno del ciclo ma se la condizione è FALSE immediatamente uscirà dall'istruzione Do While. Il funzionamento di VBA Do While Loop è mostrato nella figura di seguito.

Sintassi di Do While Loop in VBA Excel

Do While Loop ha due tipi di sintassi in Excel VBA.

Entrambi sembrano molto simili e c'è una semplice differenziazione in essi.

Nella prima sintassi il ciclo "Do While" controlla prima la condizione e fornisce il risultato della condizione come VERO o FALSO. Se la condizione è TRUE eseguirà il codice ed eseguirà un'attività specificata e se la condizione è FALSE, uscirà dal ciclo.

Nel secondo ciclo di sintassi "Do" eseguirà innanzitutto il codice e quindi verificherà se la condizione è TRUE o FALSE. Se la condizione è VERA tornerà indietro ed eseguirà la stessa attività. Se la condizione è FALSE, uscirà immediatamente dal loop.

Esempio di Excel VBA Do While Loop

Se nella teoria non hai capito nulla, nulla di cui preoccuparti. Ti spiegherò la semplice serie di esempi per avere una buona conoscenza di questo ciclo.

Puoi scaricare questo modello Excel VBA Do While Loop qui - Modello Excel VBA Do While Loop

Ora eseguiremo il compito di inserire i primi 10 numeri seriali dalla cella A1 alla A10. Seguire i passaggi seguenti per applicare il ciclo "Do While".

Passo 1:

Crea prima un nome macro.

Codice:

 Sottotitolo Do_While_Loop_Example1 () End Sub 

Passo 2:

Definire una variabile come "Long". Ho definito "k" come tipo di dati lungo.

Codice:

 Sottotitolo Do_While_Loop_Example1 () Dim k come sottotitolo lungo 

Passaggio 3:

Ora inserisci la parola "Do While". E dopo aver avviato il nome del ciclo inserire la condizione come "k <= 10".

Codice:

 Sottotitolo Do_While_Loop_Example1 () Dim k come long mentre k <= 10 End Sub 

Step 4:

Ora utilizzando la proprietà CELLS consente di inserire numeri di serie.

Codice:

 Sotto Do_While_Loop_Example1 () Dim k come lungo mentre k <= 10 celle (k, 1) .Valore = k End Sub 

Nota: qui la variabile “k” inizia da 1, quindi al primo valore k è uguale a 1. Ovunque “k” sia uguale a 1.

Passaggio 5:

Ora chiudi il loop inserendo la parola "LOOP".

Codice:

 Sotto Do_While_Loop_Example1 () Dim k come lungo mentre k <= 10 celle (k, 1) .Valore = k Sottotitolo loop 

Ok, abbiamo finito. Per una migliore comprensione, testiamo questo codice uno per uno premendo una volta il tasto F8.

Premi prima il tasto F8, evidenzierà il nome della macro con il colore giallo.

Ora ancora una volta premere il tasto F8 per passare a Do While Loop. Posiziona il cursore su "k" e vedi qual è il valore.

Quindi, K = 0. Il motivo per cui "k" è uguale a zero ora perché il loop non è stato avviato per essere eseguito qui. Premi F8 ancora una volta e vedi qual è il valore.

Tuttavia, il valore "k" è zero. Ok, facciamo una cosa ora, ferma l'esecuzione della macro e assegna il valore di "k" come 1 prima dell'inizio del ciclo.

Ora all'interno del ciclo riassegnare il valore k come k = k +1.

Ora avvia il processo di esecuzione del codice riga per riga premendo il tasto F8. Inizia a premere F8 e vedi qual è il valore quando esegue il ciclo "Do While".

Codice:

 Sotto Do_While_Loop_Example1 () 

Dim k come lungo

k = 1

Esegui mentre k <= 10
Celle (k, 1) .Valore = k
k = k + 1

Ciclo continuo

End Sub

Quindi il valore "k" è uguale a 1. Ovunque "k" sia presente è uguale al valore di 1. Quindi la riga delle celle di codice (k, 1). Valore = k è uguale a:

Cells (1, 1) .Value = 1 ie Row 1 & Column 1 (A1 cell) il valore è uguale a 1.

Premi il tasto F8 ed esegui l'azione all'interno del loop.

Ora, guarda il valore nella cella A1.

Quindi abbiamo ottenuto il valore 1 nella cella A1.

Ora esegui la riga successiva premendo il tasto F8 e vedi qual è il valore di "k".

Quindi ora il valore di k è uguale a 2. Quindi ovunque k sia presente è uguale a 2.

Premere il tasto F8, ora il codice tornerà per testare il valore di k.

Ora premi altre due volte il tasto F8 e vedi qual è il valore nella cella A2.

In questo modo Do While Loop continua a eseguire il compito di inserire numeri seriali fino a quando il valore di k raggiunge 11. Ora ho già eseguito riga per riga fino a quando il valore k diventa 10.

Ora se premo ancora una volta il tasto F8 tornerà a testare la condizione ma non eseguirà la riga di codice perché il valore k ora è più di 10.

Se premo il tasto F8, uscirà immediatamente dal loop e passerà a End Sub.

L'output finale è dato come segue.

In questo modo VBA Do While Loop può essere utilizzato per eseguire la stessa serie di attività fino a quando la condizione specificata è TRUE.

Cose da ricordare

  • VBA Do While Loop esegue l'attività fino a quando la condizione è TRUE.
  • Possiamo anche testare la condizione all'inizio del loop o anche alla fine del loop.
  • La condizione di movimento è FALSE uscirà dal loop e non eseguirà l'attività.

Articoli consigliati

Questa è stata una guida a VBA Do While Loop. Qui abbiamo discusso su come utilizzare Excel VBA Do While Loop insieme ad alcuni esempi pratici e template Excel scaricabili. Puoi anche consultare i nostri altri articoli suggeriti:

  1. Come utilizzare la funzione FIND in Excel?
  2. Metodi per utilizzare la funzione VBA in Excel
  3. Modi per utilizzare la funzione VBA in Excel
  4. Come usare la funzione VBA VLOOKUP?

Categoria: