Documente Academic
Documente Profesional
Documente Cultură
– CURS 10 -
Controale VBA:
Formular (Form)
Buton de comandă (Command
Button)
Casetă de dialog (MsgBox)
Eticheta (Label)
Programare VBA
Proprietăţile unui obiect (Properties) sunt
grupate astfel:
• Format – sunt opţiuni legate de modul de
prezentare al controlului;
• Data – controlează sursa datelor, posibilităţi
de editare, adăugare, ştergere date;
• Event – specifică evenimentele posibile ale
obiectului;
• Other – proprietăţi diverse, cum ar fi numele
obiectului sau bara de instrumente ataşată
unui formular;
• All – lista tuturor proprietăţilor.
Programare VBA
• Data proprietăţi:
- Allow Additions, Deletions, Edits sunt
proprietăţi referitoare la câmpurile unui tabel
sau la permisiunea de adăugare, modificare şi
ştergere a valorilor din caseta de tip text.
• Events conţine evenimentele posibile ale unui
obiect, dintre care numai unele sunt
interesante pentru aplicaţie şi acestora
programatorul le ataşează proceduri-
eveniment.
Programare VBA
I. Formularul
Buton Explicaţii
vbOKOnly răspuns OK
vbOKCancel Răspunsuri OK şi Cancel
vbAbortRetryIgnore Răspunsuri Abort, Retry şi Ignore
vbYesNoCancel Răspunsuri Yes, No, Cancel
vbYesNo Răspunsuri Yes, No
vbCritical Buton de atenţionare, răspuns Ok
vbInformation Buton de informare, răspuns Ok
Programare VBA
Funcţia MsgBox returnează o valoare care indică butonul
activat de utilizator şi în funcţie de care programul
poate lua o decizie:
rasp=MsgBox("Deschide formular?",vbYesNo,
"Fereastra_mesaj")
If rasp = vbYes Then ‘Raspuns
Yes
DoCmd.OpenForm “Produse"
Else
Label1.Caption = "Raspuns NU!“ 'Raspuns No
End If
End Sub
Programare VBA
Programare VBA
IV. Eticheta (Label)
Este un control simplu care poate funcţiona ataşat altui
control sau independent. Se identifică prin Aa.
Proprietăţile cele mai importante sunt :
a) Meniul Format – conţine proprietăţi ale modului de
prezentare a etichetei:
• Visible - Yes (eticheta este vizibilă) ;
• Caption – textul conţinut de etichetă, eventual
=Date() – data calculatorului ;
• Fore Color, Font Name, Font Size – proprietăţi ale
fonturilor;
• Back Color, Back Style – proprietăţi ale
fundalului;
Programare VBA - Eticheta (Label)
b) Meniul Other :
• Name - identifică obiectul în cadrul
programelor.
• ControlTipText - este textul care apare dacă
se reţine mouse-ul pe obiect (Screen Tip)
c) Meniul Event – evenimentele ataşate obiectului:
• On Click/ On Dbl Click,
• On Mouse Up/Down,
• On Mouse Move.
Programare VBA
Ataşarea etichetei (Label) la un alt obiect grafic se
face:
- Se selectează eticheta
- Se activează meniul contextual (click dreapta)
- Se alege comanda Cut
- Se poziţionează eticheta pe obiect
- Se dă comanda Paste.
O activare cu mouse-ul a ertichetei ataşate unui
obiect este echivalentă cu activarea obiectului.
OBS. Etichetele nu se pot lega de câmpuri din
tabele, nu au un control de tip RecordSource.
Programare VBA
V. Cutie de tip text (TextBox)
- Permite afişarea şi citirea datelor la/de la
utilizator.
Proprietăţile cele mai importante sunt :
a) Meniul Format – proprietăţi legate de modul de
prezentare a informatiilor în caseta-text
(numere de diferite tipuri, text, data);
• Visible : Yes (caseta este vizibilă) ;
• Fore Color, Font Name, Font Size – proprietăţi
ale fonturilor casetei;
• Back Color, Back Style – proprietăţi ale
fundalului casetei;
Programare VBA - TextBox
b) Meniul Data
• ControlSource – defineşte obiectul de care este
legat controlul:
• un câmp dintr-o tabelă,
• necompletată – Unbound – care permite intrări
de date, in timpul executiei;
• Input Mask : modul de introducere a datelor în
casetă (Password, Long Date, Short Date, Phone
Number);
• Validation Rule, Validation Text – validare date şi
textul afişat când regula de validare nu este
îndeplinită ;
Programare VBA - TextBox
b) Meniul Data
• Default Value – valoarea care apare în casetă la
deschiderea formularului,
• Enabled şi Locked – controlează dacă caseta
poate fi accesibilă şi dacă modificarea
conţinutului ei este posibil ;
• RunningSum – este o proprietate pe care o au
numai casetele dintr-un raport şi poate avea
valorile OverAll sau OverGroup; se foloseşte la
numerotarea liniilor rapoartelor.
Programare VBA - TextBox
b) Meniul Data
Exemplu:
If Caseta_parola.Text = "abcdef”
………………………………….
Programare VBA
Controale VBA:
Caseta de listare (ListBox)
Caseta de tip Combo (ComboBox)
Partajarea datelor cu alte aplicaţii
Programare VBA
X. Module de program
Am precizat în paragraful anterior că se pot scrie în VBA
module de program care să nu fie ataşate unui
eveniment şi să existe posibilitatea apelării lor din orice
punct al aplicaţiei, cu comanda:
Call nume_procedura sau nume_procedura.
Exemplu: Validarea CNP-ului prin funcţia Validare_CNP:
Argument wCNP – variabilă de tip Text13
Returnează valoarea 1 dacă CNP-ul este corect sau 0, în
caz contrar.
Programare VBA
ÎNTREBĂRI ?