joi, 11 iulie 2013

Editorul Visual Basic



În aceasta postare vă prezint mediul de dezvoltare Visual Basic for Applications integrat în Microsoft Office.

Utilizând Visual Basic Editor, numit în continuare VBE, se poate crea, edita, depana şi executa un cod program asociat cu documente Microsoft Office.

O obiecţie la utilizarea VBA este aceea ca proiectul se poate executa doar dintr-o aplicaţie Office (deci deschizând, chiar formal o foaie Excel), dar multitudinea de componente disponibile în dezvoltarea proiectului compensează acest neajuns.

Mediul VBE este asemănător cu mediul de dezvoltare din Microsoft Visual Studio(Visual Basic, C++ etc.)  


Interfata grafica VBE

Din Excel se poate acţiona combinația Alt+F11 sau selectăm un sheet şi din meniul local alegem View Code.

Interfaţa grafică VBE este suficient de complexă, asemănătoare mediilor de programare din Visual Studio

Pe lângă obiectele grafice uzuale (Menu Bar, bare de unelte) sunt disponibile ferestre specializate pentru lucrul cu anumite categorii de obiecte:


    Properties Window pentru vizualizarea ÅŸi fixarea proprietarilor în momentul creării programului (design-time);

    Project Explorer care permite navigarea, vizualizarea ÅŸi modificarea proiectelor deschise la un moment dat;

   Code Window unde este se scrie ÅŸi este vizibil codul sursă al proiectului activ;

   Locals Window care permite vizualizarea variabilelor locale cu valorile lor;

   Immediate Window care permite executarea imediata a unei linii de cod;

   Watch Window unde se afiÈ™ează valorile unor expresii specificate (utile în depanarea programelor).


Properties Window


Prin proprietate a unui obiect se înţelege o caracteristica a respectivului obiect (cum ar fi culoarea sau vizibilitatea etc.). Fixarea valorii proprietăţii se reflectă în aparenţa obiectului sau în comportamentul lui.

 
Fereastra Properties poate fi utilizată, în momentul proiectării, pentru a vizualiza toate proprietăţile obiectului activ şi a modifica valorile dorite.
În partea superioară este cutia de obiecte în care se poate selecta un obiect (sau mai multe) dintre cele vizibile.

ÃŽn tabul  Alphabetic se listează proprietăţile modificabile ale obiectului selectat, în ordine alfabetică. Se poate modifica valoarea unui atribut prin selectarea numelui proprietăţii si tastarea sau selectarea noii valori.

ÃŽn tabul  Categorized sunt listate proprietăţile după categorii, într-un control de tip Explorer, in care ramurile pot fi expandate sau.

Se poate modifica inclusiv numele obiectului.

Fereastra Properties poate fi vizualizată, prin comanda Properties Window din meniul View.


Project Explorer


Codul sursa asociat cu un workbook este asociat într-un proiect, care este memorat ÅŸi salvat în mod automat odată cu workbook -ul Excel.  ÃŽn fereastra Project Explorer se pot vedea, modifica ÅŸi naviga printre toate proiectele asociate oricărui workbook deschis.

Pentru un proiect se listează, într-un control de tip Explorer, obiectele care recunosc evenimente, formele, modulele, referinÅ£ele. Pentru a vedea codul dintr-un modul sau codul asociat unui obiect, se selectează respectivul modul sau obiect ÅŸi se apăsa butonul View Code (primul din stânga). 

Pentru a vedea interfaţa utilizator pentru un obiect sau forma se selectează şi se apasă butonul View Object (cel din mijloc).
Pentru a vedea organizarea în foldere a elementelor listate în Project Explorer se va apăsa butonul Toggle Folders.
Fiecare element este însoţit, în arborele de structura, de icoana specifica elementului: proiect, folder, referinţa, obiect etc.
Din fişierul Excel fiecărui sheet va corespunde un obiect, în ThisWorkbook se înregistrează macrourile care aparţine de workbbook.
Aceste obiecte nu pot fi create sau şterse, se recomandă că procedurile legate de evenimente dintr-un sheet să fie înregistrate în fereastra cod corespunzătoare acestui obiect.
Din proiectul nostru mai pot face module,  module  clasă ÅŸi forme. Acestea pot să fie create, exportate, importate sau ÅŸterse.

În module stocăm procedurile noastre. Pot să fie mai multe proceduri într-un modul. Pentru mai uşoară înţelegere a programului este recomandat că procedurile să fie grupate după logica aplicaţiei.

Prin forme putem uÅŸura comunicarea cu utilizatorul.

În module clasă definim clasele folosite.





Code Window


Fereastra principala a Editorului Visual Basic este cea în care se poate scrie codul sursa. Deoarece procedurile sunt asociate unor obiecte de interfaţa, sau aparţin unui modul, mai întâi se va selecta, din Project Explorer, modulul sau forma vizata si apoi se va apăsa butonul View Code.

În partea de sus a ferestrei se găsesc două liste: Object Box unde se poate selecta obiectul pentru care se afişează procedurile asociate; Procedures/Events Box unde se poate selecta procedura pentru care se vizualizează/editează codul.

Conţinutul acestor liste se adaptează la poziţia cursorului din Code Window.

Pentru o formă




Procedurile pot fi de tip eveniment, dacă obiectul selectat este o forma utilizator. Selectarea unei proceduri produce o defilare a textului astfel încât pointerul sa fie la prima linie a procedurii.
Pot fi deschise mai multe ferestre de editare, textul poate fi mutat/copiat între ferestre, ferestrele se pot diviza utilizând bara de divizare etc.
Acţionarea butonului Procedure View Icon (primul din stânga, pe bara de jos a ferestrei) sau a butonului Full Module View Icon produce alegerea între vizualizarea unei singure proceduri sau a tuturor procedurilor din modul.

La funcţionarea acestei ferestre o să mai revin printr-un exemplu.



Locals Window


Utilă în procesul de punere la punct a programului, fereastra Locals servește la afișarea automată a tuturor variabilelor declarate în procedura curentă.
Conţinutul ferestrei este actualizat de fiecare data când se trece din modul Run în modul Break sau atunci când se navighează în stiva de apeluri.



Immediate Window


Permite scrierea si execuţia imediata a unei linii de cod. Linia poate fi copiată în si dintr-o fereastra de cod.
În modul de execuţie Break, instrucţiunea din fereastra Immediate este executata în contextul procedurii afişate în Procedure Box.

Important în această fereastră putem afişa valoarea unor variabile prin instrucţiuni Debug.Print


Watch Window


Este fereastra unde sunt afişate automat valorile expresiilor urmărite în etapa de depanare a proiectului.

Niciun comentariu:

Trimiteți un comentariu