Tipurile de operatori fac

Tipurile de operatori fac

Această carte vă va ajuta să stăpâniți mediul de dezvoltare integrat VBA și să învățați cum să programați în VBA folosind obiecte, proprietăți, metode și evenimente. Metodele de programare discutate sunt ilustrate prin exemple care pot fi testate imediat în practică. Puteți aplica aceste cunoștințe atât pentru crearea și îmbunătățirea aplicațiilor de birou populare, inclusiv pentru aplicațiile Office XP, cât și pentru crearea propriilor aplicații.







Cartea este concepută pentru cei care vor să învețe rapid și fără prea mult efort să învețe cum să programeze pentru Windows utilizând VBA.

Carte: VBA pentru Dummies

Tipuri de operatori Do. buclă

Tipuri de operatori Do. buclă

În VBA, mai multe tipuri de Do. Buclă, dar toate funcționează foarte asemănător.

Do. Buclă Repetă executarea unui bloc de cod până când o anumită declarație condiționată din buclă execută comanda End Do

În timp ce. Buclă Începe și repetă executarea unui bloc de cod numai dacă condiția specificată este True

Do. Bucle în timp ce execută blocul de cod o singură dată și apoi repetă executarea până când condiția specificată este True

Do Until. Buclă Începe și repetă executarea blocului de cod de program numai dacă condiția specificată are valoarea False

Do. Buclă până când execută o singură dată blocul de cod de program și apoi repetă execuția până când condiția specificată va lua valoarea False

Declarația Do While. Buclele pot fi considerate un prototip al structurii Do. Aici este sintaxa sa:

În timpul condiției

(operatorii care execută atunci când condiția este True)

După ce a detectat declarația Do While, VBA începe să verifice starea. Dacă expresia de evaluare este evaluată la False, VBA ignoră restul bucla și merge direct la instrucțiunile programului urmând instrucțiunea Loop. Dacă condiția este adevărată, VBA execută instrucțiunile din bloc. După ce a ajuns la instrucțiunea Loop, VBA revine din nou la instrucțiunea Do While pentru a verifica din nou condiția.

În mod obișnuit, una sau mai multe instrucțiuni din corpul buclă pot schimba valoarea expresiei reprezentând condiția, astfel încât condiția poate deveni Falsă. În acest caz, VBA întrerupe execuția buclă și, sărind peste toți operatorii, continuă să execute instrucțiunile urmând instrucțiunea Loop. Dar dacă condiția este încă adevărată, instrucțiunile buclă vor fi executate din nou.







În timp ce intOriginalNumber

intOneDigit = intOriginalNumber Mod 10

strBackwardsNumber = strBackwardsNumber intOneDigit

intOriginalNumber = Int (intOriginalNumber / 10)

În primul ciclu Do, se verifică dacă valoarea introdusă de utilizator nu este negativă și numărul introdus are cel puțin două caractere (altfel, ce ar trebui să rearanjeze?). Când programul execută această buclă pentru prima dată, valoarea variabilei intOriginalNumber este 0, deoarece nu a fost atribuită nici o valoare acestei variabile înainte. Zero este mai mică de 10, astfel încât condiția este adevărată, iar VBA începe executarea buclei.

Ciclul conține un operator care afișează o fereastră de intrare în care utilizatorul este rugat să introducă un număr adecvat. După introducerea numărului, operatorul buclă trimite procesul de execuție la începutul buclei, unde este bifat numărul introdus. Ciclul își va încheia activitatea doar atunci când verificarea arată că a fost introdus un număr corespunzător. (Rețineți că în acest exemplu sunt omis câteva elemente importante pentru validarea intrării, cum ar fi verificarea dacă numărul este un număr întreg și dacă este mai mare decât maximul permis pentru variabilele Integer).

După confirmarea corectitudinii valorii introduse, VBA continuă cu următorul ciclu. Condiția pentru această buclă este valoarea pozitivă din variabilă. Deoarece numerele non-zero generează Adevărat, puteți scrie Do În timp ce intOricinalNumbe r> 0 pur și simplu Do Do intOriginalNumber în loc de Do While - ambele opțiuni funcționează în același mod.

În ciclul în sine, o procedură simplă în trei linii analizează cifrele numărului original, pornind de la dreapta la stânga și le folosește în ordine inversă pentru a construi o nouă linie. Pentru a înțelege cum funcționează buclă, nu este necesar să înțelegeți codul din interiorul bucla, dar cred că următoarele explicații nu vă vor face rău.

* În prima linie, operația Mod este folosită pentru a atribui restul numărului la 10 la variabila intOneDigit. Deoarece numărul este împărțit la 10, restul este o singură cifră reprezentată de ultima (dreapta) cifră a numărului inițial.

* În a doua instrucțiune, cifra din prima linie este adăugată la sfârșitul noii valori șir care este în curs de creare.

* În a treia instrucțiune, numărul este din nou împărțit la 10, dar de această dată rezultatul este stocat în variabila inițială f. Cu această divizare, semnul corect al numărului este pur și simplu aruncat. v Notați însă că înainte ca rezultatul să fie atribuit unei variabile, acesta este procesat de funcția Int. Utilizarea funcției int aici este necesară, deoarece altfel rezultatul va fi rotunjit și acest lucru ar schimba caracterele numărului în comparație cu cele introduse inițial.

* În timpul buclă, valoarea intOriginalNumber scade și în final devine 0 după ce toate cifrele au fost procesate (orice cifră specifică un număr mai mic de 10, iar funcția int elimină partea fracționată a numărului). În țara VBA, zero înseamnă False, astfel încât bucla se va termina și programul va afișa numărul cu poziția inversă a cifrelor.







Articole similare

Trimiteți-le prietenilor: