- Crearea unui UserForm
- Crearea unei casete de text
- Crearea unui control de etichetă
- Crearea unui Control Box Combo
- Crearea unui control casetă listă
- Crearea unui control casetă de selectare
- Crearea unui control de grup de opțiuni cu butoane de opțiune
Crearea unui buton de comandă pentru a ieși din formular
Acest articol va arăta cum să utilizați comenzile în UserForms în Excel VBA.
VBA are capacitatea de a crea formulare cu care utilizatorul poate interacționa, cum ar fi formulare cu facturi sau detalii de contact. Un formular poate conține o varietate de controale de formular, cum ar fi casete de text, casete combinate, casete de listă și butoane de comandă. Acest articol va acoperi cele mai populare controale utilizate pe formularele de utilizator și anume casete text, etichete, casete combinate, casete de listă, casete de selectare și grupuri de opțiuni.
Pentru a afla mai multe despre formularele de utilizator încorporate și crearea de formulare de utilizator personalizate în Excel, faceți clic aici.
Crearea unui UserForm
Pentru a crea un UserForm în Excel VBA, trebuie mai întâi să deschidem fișierul Editor VBE.
Pentru a insera un nou formular de utilizator în codul dvs., selectați UserForm din meniul Insert.
Un nou formular de utilizator va apărea în Project Explorer și va fi afișat în fereastra de cod din dreapta.
Puteți redenumi formularul folosind Proprietăți cutie. Acest lucru ar trebui să apară sub Project Explorer.
Dacă este cât de vizibil, apăsați F4 sau faceți clic Vedere, Fereastra Proprietăți.
Faceți clic în Nume proprietate și redenumiți formularul.
Acum putem începe să completăm formularul nostru cu controale - controlul casetei de text este cel mai popular control împreună cu butonul de control al etichetei și de comandă.
Pentru a completa formularul cu controale, trebuie să pornim caseta de instrumente.
În Meniul, Selectați Vizualizare> Casetă de instrumente.
Crearea unei casete de text
Pentru a crea o casetă de text în formularul dvs., selectați controlul Casetă de text din caseta de instrumente.
Trageți o formă de casetă pe formular cu mouse-ul, ținând apăsat butonul stâng, apoi eliberați butonul mouse-ului.
Deoarece aceasta este prima casetă de text pe care o creăm, va fi numită TextBox1. Ca și în cazul formularului, puteți utiliza fereastra Proprietăți pentru a redenumi caseta de text.
Putem continua să creăm în formularul nostru cât mai multe casete de text de care avem nevoie și să le denumim după caz, folosind proprietatea Name din fereastra Properties.
Crearea unui control de etichetă
Un control al etichetei ne spune ce va fi folosit pentru a păstra caseta de text. Trageți formularul în același mod ca și pentru o casetă de text și apoi puteți introduce textul necesar în controlul etichetei, de exemplu: Prenume așa cum se arată mai jos.
Ca și în cazul casetelor de text, continuați să creați câte sunt necesare în formular.
Crearea unui Control Box Combo
O casetă combinată (sau o casetă derulantă) permite utilizatorului să selecteze dintr-o listă de valori. Pentru a crea o casetă combinată, faceți clic în caseta de instrumente din controlul Casetă combinată și faceți clic și trageți caseta combinată în formularul dvs.
Denumiți corespunzător caseta combinată.
Adăugarea de valori la caseta combinată
Pentru a-l completa cu valori, trebuie să codăm în Inițializați metoda obiectului formular de utilizator.
Pentru a ajunge la Codul din spatele formularului (CBF), fie faceți dublu clic pe formular, fie faceți clic pe butonul de cod din Project Explorer pentru a comuta la vizualizarea codului.
În lista verticală din partea stângă, selectați Formular utilizator, apoi în lista verticală din partea dreaptă, selectați Inițializare.
Tastați următorul cod în Sub și End Sub pentru a completa caseta derulantă:
1234 | Me.cboState.AddItem "Alabama"Me.cboState.AddItem "Alaska"Me.cboState.AddItem "Arizona"Me.cboState.AddItem "Arkansas" |
Desigur, putem continua o listă cu restul statelor din SUA!
Pentru a rula formularul de utilizator pentru a vedea lista în acțiune, 1) reveniți la vizualizarea formularului și apoi, 2) în Bara de instrumente, faceți clic pe Alerga buton.
Faceți clic pe săgeata verticală pentru a vedea lista.
De asemenea, putem folosi o gamă în Excel pentru a completa caseta combinată.
123456 | Private Sub UserForm_Initialize ()Dim rng As RangePentru fiecare rng din interval ("A1: A50")Me.cboState.AddItem rng.ValueUrmătorul rngSfârșitul Sub |
Aceasta va prelua toate valorile stocate în intervalul A1 până la A50 și va completa populația corespunzătoare.
Crearea unui control casetă listă
Un control List Box funcționează la fel ca un control Combo Box, dar ne permite să vedem toate opțiunile din formular într-un format de listă.
Selectați controlul Casetă listă din caseta de instrumente și apoi trageți pentru a crea o casetă listă în formularul dvs.
V-ați săturat să căutați exemple de cod VBA? Încercați AutoMacro!
Adăugarea de valori în caseta de listă
În evenimentul Initialize al formularului, tastați următorul cod:
123456 | Private Sub UserForm_Initialize ()Dim rng As RangePentru fiecare rng din interval ("A1: A50")Me.lstState.AddItem rng.ValueUrmătorul rngSfârșitul Sub |
Când rulăm formularul, caseta listă va fi afișată așa cum se arată în imaginea de mai jos:
Crearea unui control casetă de selectare
Casetele de selectare permit utilizatorului să bifeze sau să debifeze o opțiune.
Selectați controlul Casetă de selectare, apoi faceți clic în formularul în care doriți să meargă.
Modificați legenda și numele casetei de selectare din fereastra Proprietăți.
Crearea unui control de grup de opțiuni cu butoane de opțiune
Un grup de opțiuni permite utilizatorului să selecteze dintr-o serie de opțiuni disponibile. Primul pas în crearea unui grup de opțiuni este să adăugați un control de cadru la formular și apoi să adăugați butoanele de opțiune în cadrul care a fost adăugat. Procedând astfel, ne asigurăm că atunci când rulăm formularul, numai unul dintre butoanele opționale din cadru poate fi selectat simultan.
Selectați controlul Cadru din caseta de instrumente și apoi trageți pentru a crea un cadru în formular.
Selectați controlul Buton opțiune din caseta de instrumente și apoi faceți clic ÎN CADRUL creat de mai sus pentru a adăuga butonul opțional în cadru. Repetați după cum este necesar.
Faceți clic pe cadru și 1) modificați numele cadrului și legenda. Apoi 2) faceți clic pe fiecare dintre butoanele de opțiune și modificați legenda.
Crearea unui buton de comandă pentru a ieși din formular
În acest stadiu, singura modalitate de închidere a formularului este utilizarea butonului de închidere din colțul din dreapta al barei de control a formularului. O modalitate mai eficientă de a ieși dintr-un formular și în care avem mai mult control, este crearea unui buton Exit pe formular. Acest lucru se face prin intermediul butonului de comandă Control din caseta de instrumente.
Selectați controlul butonului de comandă, apoi faceți clic și trageți în formular pentru a crea butonul.
Folosind Proprietatea subtitrării, schimbați subtitrarea butonului de comandă la OK și Acceleratorul la „O”
Scopul Acceleratorului este ca utilizatorul să folosească tastatura pentru a activa butonul, în acest caz Alt + O ar activa butonul.
Produs grozav. AutoMacro nu doar îți scrie codul, ci te învață pe măsură ce mergi! "- Tony, Marea Britanie
Află mai multeCitiți peste 900 de recenzii
Adăugarea codului la butonul de comandă
Pentru ca butonul de comandă să funcționeze, trebuie să adăugăm cod în spatele acestuia, astfel încât atunci când se face clic pe buton, codul să ruleze. Acesta se numește evenimentul Click al butonului.
Pentru a ajunge la evenimentul de clic, faceți dublu clic pe butonul din vizualizarea de proiectare a formularului.
1) Evenimentul Click va fi creat automat deoarece acesta este evenimentul cel mai frecvent utilizat pentru butoanele de comandă.
2) Dacă ar fi să facem clic în caseta derulantă Procedură din partea dreaptă, am vedea o listă cu toate metodele de eveniment disponibile pentru butonul de comandă. Această listă se modifică în funcție de ce tip de control am creat, deoarece există diferite evenimente disponibile pentru diferite tipuri de controale.
Tastați următorul cod în evenimentul de clic al butonului de comandă.
123456789101112131415 | Sub privat cmdOK_Click ()Range ("E1") = Me.txtFirstnameRange ("E2") = Me.txtSurnameRange ("E3") = Me.txtCellPhoneRange ("E4") = Me.cboStateDacă Me.ckContactInfo = Adevărat atunciRange ("E5") = "SMS permis"AltfelRange ("E5") = "SMS-ul nu este permis"End IfIf Me.opt1.Value = True Then Range ("E6") = Me.opt1.CaptionIf Me.opt2.Value = True Then Range ("E6") = Me.opt2.CaptionIf Me.opt3.Value = True Then Range ("E6") = Me.opt3.CaptionDescarcă-măSfârșitul Sub |
Putem apoi să rulăm formularul, să completăm casetele de text și să selectăm din lista derulantă. Apoi facem clic pe OK pentru a introduce informațiile în Excel.