Formulare de programare pentru programarea vba-vba (birou)

Crearea programelor VBA

Luați în considerare crearea de programe care interacționează direct cu formularele generate.

Creați un formular în care când introduceți un nume în câmpul de text după apăsarea butonului OK, pe etichetă se trimite un mesaj de salut în formularul: "Nume, salut! Astăzi este data și ora la care a fost lansat programul. "







Programul, care citește valoarea din câmpul text, transmite această valoare către elementul de control corespunzător și utilizează suplimentar funcția de ieșire a timpului și data de lansare a programului.

Execuția tehnologiei

Orice dezvoltare a programului pe VBA va fi însoțită de dezvoltarea unui formular care este direct legat de programul creat. Prin urmare, în acest exemplu, ordinea de performanță a muncii va fi discutată în detaliu.

Primul pas. Proiectarea programului de probă

Programul de probă trebuie să deschidă o nouă fereastră cu mesajul de întâmpinare afișat în acesta, precum și data și ora (mesajul). Fereastra va rămâne pe ecran până când utilizatorul face clic pe butonul OK.

Având o descriere detaliată a sarcinii, este posibil să se determine acele elemente din care ar trebui să fie formatul care interacționează cu programul dezvoltat. În termenii exemplului, programul are o casetă de dialog definită de utilizator, deci trebuie să creați un formular (UserForm). Pentru formular, aveți nevoie de două comenzi - o inscripție pentru mesaj și un buton pentru comanda OK. Veți avea nevoie, de asemenea, pentru a crea codul pentru două proceduri: una - pentru etichetă, în cazul în care doriți pentru a posta un mesaj, iar celălalt - pentru a ieși din programul atunci când utilizatorul face clic pe butonul OK.

Al doilea pas. Implementarea proiectului

Pentru a finaliza acest pas, urmați acești pași.

Formați, de exemplu, în modul Design

Adăugarea unei inscripții în formular

Pentru a pune o inscripție în formularul de utilizator, procedați în felul următor.

  • Asigurați-vă că forma este activă făcând clic pe ea. Panoul de control este vizibil numai când formularul este activ.
  • Faceți clic pe butonul A (etichetă) de pe panoul de control.
  • Plasați indicatorul mouse-ului pe formularul în care doriți să fie plasat mesajul.
  • În fereastra Properties (Proprietăți - panoul din partea stângă jos a ferestrei), selectați proprietatea Caption și tastați linia „Introduceți un nume“, această proprietate este în al doilea tag-ul trebuie să fie gol pentru a începe cu programul label Label2 era invizibil.
  • Modificați titlul formularului însuși. Pentru aceasta, faceți clic pe bara de titlu a ferestrei de formular. În fereastra de proprietăți care sa schimbat, găsiți proprietatea Caption și o schimbați la "Time". Acest titlu nou va apărea în bara de titlu a formularului.

Adăugarea codului de program

Pentru programul nostru, trebuie să creați două proceduri și sunt asociate cu evenimente care apar în timpul executării programului. Prima procedură este de a afișa mesajul dorit când butonul de mesaj este apăsat, iar a doua procedură trebuie să încheie programul când cineva face clic pe butonul OK.

  • Faceți dublu clic pe butonul OK. În fereastra de cod care apare cu această fereastră, va apărea procedura. Prima linie a codului de program generat va fi Private Sub CommandButton2_Click ().

În orice procedură VBA, prima linie a codului programului determină tipul procedurii (în acest caz este o procedură Sub, adică o subrutină) și numele procedurii. Private și Sub se referă la cuvintele cheie VBA, adică la cuvintele și simbolurile care fac parte din limbajul VBA. În acest caz, VBA oferă procedura denumirea CommandButton2_Click, care este o combinație a unui nume de buton și a unui tip de eveniment.

Ultima linie de cod generat automat este End Sub.

O astfel de linie trebuie să se încheie cu toate procedurile de tipul Sub. Această linie îi spune VBA că procedura a fost finalizată.

Pentru a efectua prima procedură (închiderea formularului), trebuie să scrieți codul programului în această piesă de lucru:

Instrucțiunea Descărcare elimină obiectul specificat din memorie. Acesta este un obiect cu numele Me, care are un înțeles special în VBA. În acest caz, aceasta înseamnă forma și întregul cod de program.

  • Creați un handler de evenimente pentru butonul "Mesaj" făcând dublu clic pe butonul creat și scriind codul:

Dim ima ca șir

Label2.Caption = ima "Bună ziua, astăzi" Format (Acum, "dddddd, hh hours mm min.")

A doua procedură, care ar trebui să afișeze un mesaj pe ecran, este puțin mai complicată decât prima. Prima dintre liniile imprimate

Dim ima ca șir

creează o variabilă numită ima și o definește ca un șir, ceea ce înseamnă o secvență de caractere text.







A doua linie a acestei variabile atribuie o valoare de șir introdusă în elementul TextBox1 (o casetă de text poate citi numai o valoare de text). A treia linie afișează mesajul din eticheta Label2 din formular, care este setat la proprietatea Caption by a value of a string. Funcția Format afișează data și ora.

Pasul 3. Testarea programului

  • Faceți clic fie în fereastra de formular, fie în fereastra de cod, astfel încât fereastra corespunzătoare să devină activă.
  • Compilați programul: meniu + debug + compilați proiectul.
  • Rulați programul pentru a rula (F5).

Forma exemplului este în stare de funcționare

Acest lucru este important!

Dacă, la începutul mesajelor de formular dezvoltate, apar despre prea multă protecție a aplicației din macrocomenzi, adică în afara interferențelor, este necesară efectuarea următoarelor acțiuni:

Avertizare privind securitatea înaltă a aplicațiilor

Activarea modului de siguranță scăzut

Luați în considerare cele mai simple exemple de lucru cu formularele

Folosind instrucțiunea case, creați un program care, în funcție de valoarea introdusă a variabilei a, produce diferite calcule cu variabilele b și c. Dacă valoarea variabilei a nu coincide cu valorile programelor, este afișat mesajul "Valoare greșită introdusă".

Toate variabilele sunt introduse în câmpurile de text ale formularului. Când butonul "Rezultat" este apăsat, acțiunea este selectată și rezultatul este afișat pe o etichetă specială a formularului.

Execuția tehnologiei

Dim a, b, c, d ca intreg

Private Sub CommandButton1_Click ()

Label4.Caption = "Rezultat: d =" d

Label4.Caption = "Rezultat: d =" d

Label4.Caption = "Rezultat: d =" d

Label4.Caption = "Valoare greșită introdusă"

Exemplu de formă în modul de proiectare

Pentru ca programul să funcționeze corect, este necesar să se traducă toate valorile de text introduse în câmpurile de text la valori numerice. Pentru a face acest lucru, conversia este setată în codul: a = Val (TextBox1.Text) și așa mai departe. După aceea programul funcționează deja cu valori numerice.

Dacă programul emite în cele din urmă o valoare a unui tip (numeric sau șir), atunci linia de ieșire a rezultatului poate fi scrisă după sfârșitul întregului bloc Case. În acest exemplu, sunt afișate mai întâi valorile numerice (d), urmate de valoarea șirului ("Valoare greșită este introdusă"). Prin urmare, rezultatul rezultatului trebuie furnizat în fiecare ramură de caz.

Rezultatele lucrării sunt prezentate în figură.

Unele rezultate ale exemplului funcționează

Creați un program care utilizează dialogul personalizat (formular) pentru a efectua următoarele acțiuni: când introduceți trei variabile în casete de text, acestea citesc datele și o compară cu prima variabilă a. Rezultatul este dat în eticheta de pe formular.

Exemplu de formă în modul de proiectare și în stare de funcționare

Exemplu liste

Private Sub CommandButton1_Click ()

Dim a, b, c Ca Integer

Dacă a> b și a> c Apoi

Label1.Caption = "Valoarea unui> b și a> c"

Label1.Caption = "Valoarea lui a nu este întotdeauna mai mare decât b și c" End If End Sub

Creați un program care, folosind formularul, efectuează următoarele etape: câmpul de text variabilă de intrare, se citește o anumită valoare și apoi organizează un ciclu cu un pas egal cu 5, în cazul în care pentru fiecare valoare etapă a variabilei b devine egală cu valoarea variabilei o creștere plus . Valoarea totală a lui c însumează valoarea obținută de b și valoarea introdusă a. Rezultatul este dat în eticheta de pe formular.

Exemplu de formă în modul de proiectare și în stare de funcționare

Exemplu liste

Dimensiune ca variantă

Dim b ca intreg

Dim c ca întreg

Private Sub CommandButton1_Click ()

Pentru i = 1 până la 12 Pasul 5

Label1.Caption = a "+" b "=" c

Creați un program care face următoarele: o organizată pentru fiecare buclă atribuie ultima valoare a matricei definite de program la variabila b declarată în program. După aceasta, calculele propuse în program au loc:

  • eticheta label2 dă rezultatul creșterii variabilei recepționate de valoarea primului element al matricei;
  • în eticheta label3 rezultă creșterea cantității primite de valoarea celui de-al doilea element al matricei;
  • în eticheta de etichetă4, rezultatul este creșterea cantității primite pentru valoarea celui de-al treilea element al matricei;
  • eticheta label6 dă rezultatul creșterii cantității primite de valoarea ultimului element al matricei.

Rezultatul este dat pentru claritate în diferitele etichete de pe formular.

Exemplu de formă în modul de proiectare și în stare de funcționare

Exemplu liste

Dim b ca varianta

Private Sub CommandButton1_Click ()

Dim d (1 până la 4) ca variantă

Pentru Fiecare b În d

Label2.Caption = "d (1) =" d (1) "B =" b

Label3.Caption = "d (2) =" d (2) "B =" b

Label4.Caption = "d (3) =" d (3) "B =" b

Label6.Caption = "d (4) =" d (4) "B =" b

Notă. Pentru fiecare ... Următorul nu utilizează contorul de buclă. The For Each ... Următoarele buclă sunt executate de câte ori există elemente dintr-un anumit grup, cum ar fi o colecție de obiecte sau o matrice. Cu alte cuvinte, bucla For Each ... Next este executată o dată pentru fiecare element din grup. Din acest motiv, acest ciclu este utilizat în principal în acțiuni specifice, cum ar fi căutarea foii necesare în colecția de obiecte și așa mai departe și nu este utilizată pentru rezolvarea problemelor simple.

Sarcini pentru fixarea materialului

Creați un program care, utilizând datele citite din câmpurile de text din formular, afișează un mesaj după ce faceți clic pe buton:

"Bună ziua, numele a intrat, elevul de grup este numărul de grup al specialității de specialitate de specialitate!"

unde numele introdus este valoarea din primul câmp de text;

numărul grupului - valoarea din al doilea câmp de text;

numele specialității este valoarea din câmpul de text al treilea.

Creați un program care utilizează datele citite din câmpurile de formular de text, efectuați următorii pași: Dacă textul introdus este același, atunci mesajul „valoarea1 a coincis cu znacheniem2“ în cazul în care textul introdus nu este același lucru, atunci mesajul „valoarea1 nu a coincis cu znacheniem2“ în cazul în care valoarea1 și valoarea2 sunt introduse cuvinte.

Notă. La elaborarea unui program, este mai bine să utilizați operatorul Similar.

Forma exemplu în modul de lucru

Informații suplimentare despre acest subiect

Totul despre formularele de programare pe PHP - protecție, fundamente teoretice Download și exemple reale

Descrierea metodelor și metodelor de programare a bazelor de date, precum și a aplicațiilor necesare pentru aceasta

Articolul dezvăluie principalul avantaj al stilului de cod atunci când se programează în Python

Descrierea a ceea ce este programarea, pentru ce este și pentru ce limbi de programare există







Articole similare

Trimiteți-le prietenilor: