VBA Do Until Loop | Exemple pas cu pas pentru a utiliza Do Until în VBA

Ce se face până la buclă în VBA Excel?

În VBA Do Until Loop , trebuie să definim criteriile după instrucțiunea until, ceea ce înseamnă când vrem ca bucla să se oprească și instrucțiunea end să fie bucla în sine. Deci, dacă condiția este FALSĂ, va continua să execute instrucțiunea în interiorul buclei, dar dacă condiția este TRUE imediat, va ieși din instrucțiunea Do Until.

După cum spune cuvintele în sine, pentru a face o sarcină până când se atinge un criteriu, faceți până când bucla este utilizată în aproape toate limbajele de programare, în VBA folosim uneori și Do până la buclă. Fă până la buclă înseamnă să faci ceva până când condiția devine ADEVĂRATĂ. Este ca și cum o funcție logică funcționează bazată pe ADEVĂRAT sau FALS.

Acesta este opusul buclei Do While unde Do while rulează buclele atâta timp cât condiția este ADEVĂRATĂ.

Sintaxă

Bucla Do Until are două tipuri de sintaxă.

Sintaxa # 1 

 Faceți până la [condiție] [Efectuați unele sarcini] Buclă 

Sintaxa # 2

 Buclați [Efectuați unele sarcini] până la [condiție] 

Ambele arată foarte asemănător și există o diferențiere simplă.

În prima sintaxă bucla „Do Until” verifică mai întâi starea și obține rezultatul stării este ADEVĂRAT sau FALS. Dacă condiția este FALSĂ, va executa codul și va efectua o sarcină specificată și dacă condiția este ADEVĂRATĂ, atunci va ieși din buclă.

În cea de-a doua sintaxă „Do”, bucla va executa mai întâi sarcina cod, apoi va testa dacă condiția este ADEVĂRATĂ sau FALSĂ. Dacă starea este FALSĂ, va reveni din nou și va efectua aceeași sarcină. Dacă condiția este ADEVĂRATĂ, atunci va ieși imediat din buclă.

Exemplu

Știu că nu este atât de ușor să înțelegi ceva în partea teoretică, dar nimic de îngrijorat. Vă vom oferi exemple ușoare pentru a înțelege bucla. Citește mai departe. Pentru a începe învățarea, să îndeplinim sarcina de a insera primele 10 numere de serie de la celula A1 la A10.

Puteți descărca acest șablon VBA Do Until Excel aici - VBA Do Until Excel Template

Urmați pașii de mai jos pentru a aplica bucla „Do Until”.

Pasul 1: Creați mai întâi un nume de macro pentru a porni subprocedura.

Cod:

 Sub Do_Until_Example1 () End Sub 

Pasul 2: definiți o variabilă ca „Long”.  Am definit „x” ca un tip de date lung.

Dim x As Long

Pasul 3: Introduceți acum cuvântul „Fă până”.

Fă până

Pasul 4: După ce porniți numele buclei, introduceți condiția ca „x = 11”.

 Faceți până la x = 11

x = 11 este testul logic pe care l-am aplicat. Deci, această linie spune să rulați bucla până când x este egal cu 11.

Pasul 5: Aplicați proprietatea CELLS și să introducem numerele de serie de la 1 la 10.

Celule (x, 1). Valoare = x

Notă: Aici am menționat că „x” începe de la 1, deci la început valoarea x este egală cu 1. Oriunde este „x” este egal cu 1.

Pasul 6: Acum închideți bucla introducând cuvântul „LOOP”.

 Sub Do_Until_Example1 () Dim x Do as Long Do Until x = 11 Celule (x, 1). Valoare = x Buclă 

Sfârșitul Sub

Ok, am terminat cu partea de codare, acum vom testa codurile linie cu linie pentru a înțelege mai bine bucla.

Pentru a rula codul rând cu rând, apăsați mai întâi tasta F8.

Mai întâi va evidenția numele macro-ului prin culoare galbenă.

Când puteți vedea linia galbenă, spune că acest lucru nu este executat de către aproape să se execute dacă mai apăsați tasta F8 încă o dată.

Apăsați tasta F8 încă o dată, linia galbenă va merge la Do Until Loop.

Acum, pentru a înțelege bucla, puneți un cursor pe variabila „x” și vedeți valoarea variabilei „x”.

Deci, x = 0. Deoarece linia evidențiată este prima linie din buclă, deci valoarea „x” este zero, așa că apăsați din nou tasta F8 și vedeți valoarea „x”. Înainte de această ieșire, codul rulează și atribuie valoarea „x” ca 1.

Acum începeți din nou rularea unei bucle apăsând tasta F8. Vedeți valoarea „x”.

Acum, valoarea „x” se afișează ca 1. Pentru a avea o valoare incrementală a variabilei „x”, trebuie să reatribuiți valoarea variabilei „x” ca x = x + 1 în buclă.

Acum apăsați tasta F8 încă o dată și ar trebui să obținem valoarea 1 în celula A1.

Acum apăsați din nou tasta F8 și vedeți care este valoarea „x”.

Valoarea variabilei „x” este 2 acum. Deci, starea noastră spune să rulăm bucla până când condiția devine ADEVĂRATĂ, așa că bucla noastră continuă să ruleze până când valoarea „x” devine 11.

Apăsați F8 încă o dată pentru a reveni la linia de buclă „Do Until”.

Apăsați tasta F8 de încă două ori, vom obține valoarea 2 în celula A2.

Apăsați din nou tasta F8 și valoarea „x” devine acum 3.

Apăsați din nou tasta F8, va reveni din nou la buclă.

Astfel, această buclă va continua să execute sarcina până când valoarea „x” devine 11. Acum am executat bucla până când valoarea „x” devine 11.

Acum, dacă apăs F8, tot va reveni la buclă.

Dar dacă apăs tasta F8 acum va ieși din buclă deoarece condiția aplicată devine „ADEVĂRATĂ” adică x = 11.

Deci, acum avem numere de serie de la 1 la 10 în foaia Excel.

Deci, aceasta este ideea de bază a buclei „Do Until”. Pentru a înțelege orice bucle, trebuie să rulați codul rând cu rând până când obțineți cunoștințele complete despre bucle.