VBA pentru următorul - Ghid pentru utilizarea Excel VBA pentru următoarea declarație

Excel VBA pentru următoarea buclă

VBA pentru următoarea buclă este o buclă care este utilizată printre toate limbajele de programare, în această buclă există un criteriu după instrucțiunea for pentru care codul se bucură în buclă până când criteriile sunt atinse și când criteriile sunt atinse următoarea instrucțiune procedura la pasul următor al codului.

Bucla „Pentru următorul” este una dintre acele bucle care este folosită foarte des decât alte bucle în codarea VBA. Buclele ne vor ajuta să repetăm ​​același tip de sarcină pentru celulele specificate până când condiția este ADEVĂRATĂ.

FOR LOOP parcurge gama de celule și efectuează o sarcină specifică până când condiția este ADEVĂRATĂ. De exemplu, dacă doriți să parcurgeți primele 10 celule și să inserați numere de serie incrementate cu 1, puteți utiliza bucla FOR NEXT.

Această buclă are nevoie de o variabilă pentru a rula bucla. Folosind această variabilă, putem face referiri dinamice la celule.

Acesta include trei parametri.

Pentru declarație = Punctul de pornire până la punctul final (Efectuați o sarcină) Următoarea declarație

Din punctul de plecare, bucla va începe și va efectua o anumită sarcină după terminarea sarcinii, mutarea sa la următoarea buclă și din nou va efectua aceeași sarcină în celula diferită. Astfel, până atinge punctul final, continuă să efectueze sarcina specificată.

Cum se folosește VBA pentru Next Loop?

Să presupunem că doriți să inserați numere de serie de la 1 la 10 la celule A1 până la A10. Desigur, putem insera ca scrierea a zece linii de cod.

Cod:

Sub For_Next_Loop_Example1 () Range ("A1"). Value = 1 Range ("A2"). Value = 2 Range ("A3"). Value = 3 Range ("A4"). Value = 4 Range ("A5") .Value = 5 Range ("A6"). Value = 6 Range ("A7"). Value = 7 Range ("A8"). Value = 8 Range ("A9"). Value = 9 Range ("A10") .Value = 10 End Sub

Dar dacă vreau să introduc 100 de numere de serie? Desigur, nu pot scrie 100 de linii de cod doar pentru a insera numere de serie. Aici intervine frumusețea buclei „FOR NEXT” . Urmați pașii de mai jos pentru a minimiza codul.

Pasul 1: Mai întâi, trebuie să definim o variabilă. Am declarat numele variabilei numit „Serial_Number” ca tip de date întregi.

Cod:

Sub For_Next_Loop_Example2 () Dim Serial_Number As Integer End Sub

Pasul 2: Acum comand să aplic pentru bucla NEXT, obiectivul nostru este să introducem numere de serie de la 1 la 10, deci acest lucru înseamnă că bucla noastră trebuie să ruleze de zece ori. Deci, declarația FOR LOOP ar trebui să fie așa.

Pentru Serial_Number = 1-10

Următorul Serial_Number

Cod:

Sub For_Next_Loop_Example2 () Dim Serial_Number as Integer For Serial_Number = 1 To 10 Next Serial_Number End Sub

Pasul 3: Am aplicat bucla. Acum, odată ce bucla este aplicată, trebuie să specificăm ce trebuie să facem în interiorul buclei. Obiectivul nostru aici este de a insera numere de serie de la 1 la 10. Deci, scrieți codul ca celule (Serial_Number, 1) .Value = Serial_Number.

Cod:

Sub For_Next_Loop_Example2 () Dim Serial_Number As Integer Dim Serial_Number = 1 To 10 Cells (Serial_Number, 1) .Value = Serial_Number Dim Serial_Number End Sub

Pasul 4: Motivul pentru care am dat Serial_Number în proprietatea CELLS, deoarece nu putem specifica numărul hardcore pentru referința rândului aici. De fiecare dată când rulează bucla, vreau să introduc noul număr de serie în noua celulă, nu în aceeași celulă.

Pasul 5: Rulați codul rând cu rând apăsând tasta F8.

Pasul 6: Plasați un cursor pe variabila Serial_Number; arată valoarea curentă a Serial_Number.

În acest moment, valoarea Serial_Number este zero.

Pasul 7: Apăsați încă o dată tasta F8, culoarea galbenă va trece la următoarea linie de cod din VBA. Acum plasați un cursor pe Serial_Number.

Acum valoarea Serial_Number este egală cu unu, deoarece acum bucla este pornită și bucla noastră începe de la 1, deci valoarea variabilă Serial_Number este egală cu una.

Un lucru mai interesant aici este oriunde există variabila Serial_Number, care este, de asemenea, egală cu 1.

Deci, în proprietatea de celule, am menționat codul ca:

Celule (Serial_Number, 1) .Value = Serial_Number

Aceasta înseamnă celule (1, 1). Valoare = 1. (celule (1,1) înseamnă rândul 1 și coloana 1.

Deci, în rândul numărul 1 și numărul coloanei 1, valoarea ar trebui să fie 1.

Pasul 8: Apăsați F8 încă o dată și vedeți ce se întâmplă în rândul 1 și coloana 1, adică celula A1.

Deci, am primit 1 ca valoare, adică valoarea Serial_Number.

Pasul 9: Apăsați încă o dată tasta F8. De obicei, următorul cod ar trebui rulat, adică sfârșitul substatementului. Dar aici, va reveni la „linia de mai sus”.

Pasul 10: Amintiți-vă că bucla a finalizat deja prima rundă. Acum revine pentru a doua oară. Acum puneți un cursor pe variabila Serial_Number și vedeți care este valoarea.

Acum variabila Serial_Number este egală cu 2 deoarece bucla a revenit deja pentru a doua oară.

Acum, oriunde este Serial_Number, este egal cu valoarea 2. Deci, codul de linie:

Celule (Serial_Number, 1) .Value = Serial_Number este egal cu:

Celule (2, 1). Valoare = 2. (Celulele (2,1) înseamnă rândul 2 și coloana 1, adică celula A2).

Pasul 11: Rulați acest cod și vedeți valoarea în celula A2.

Deci, am obținut a doua valoare a numărului de serie.

Pasul 12: Apăsați acum tasta F8. Va reveni din nou la linia de mai sus pentru a repeta codul. De data aceasta, valoarea Serial_Number va fi 3.

Pasul 13: Deci, oriunde este Serial_Number, este egal cu 3.

Deci, codul de linie: Celule (Serial_Number, 1) .Value = Serial_Number este egal cu:

Celule (3, 1). Valoare = 3. (Celule (3,1) înseamnă rândul 3 și coloana 1, adică celula A3).

Pasul 14: Apăsați F8 pentru a executa linia evidențiată și a vedea valoarea în celula A3.

Pasul 15: Acum continuați să apăsați F8. Va continua să introducă numerele de serie. Valoarea momentului variabilei Serial_Number este 10, va opri buclarea și va ieși din buclă.

Articole interesante...