Cum se utilizează ComboBox în formularul de utilizator VBA Excel?

Cuprins:

Anonim

O combobox pe o formă de utilizator este ca un meniu derulant, care poate fi folosit pentru a alege o opțiune din opțiunile disponibile. Este ca o listă derulantă pe care o creăm folosind validarea datelor pe foi de lucru.

În majoritatea formelor digitale, trebuie să fi văzut cel puțin o casetă combinată. Ar fi putut fi selectarea unui stat dintr-o listă de state, un curs dintr-o listă de cursuri, o țară dintr-o listă de țări, etc. pentru a inițializa comboboxul cu valori și cum să recuperați valoarea din combobox.

Adăugarea unui ComboBox la formularul de utilizator

Pentru a adăuga o combobox la un formular de utilizator, trebuie mai întâi să aveți un formular de utilizator. Dah !.

Deci, deschideți VBE folosind CTRL + F11. Faceți clic dreapta pe registrul de lucru, mergeți la inserare și faceți clic pe Userform. Aveți un formular de utilizator adăugat. Puteți citi mai multe despre formele de utilizator în VBA aici.

Acum, din caseta de instrumente, alegeți combobox. Este a patra opțiune pe rândul de sus. Dacă nu puteți vedea caseta de instrumente. Accesați Vizualizare din meniu, faceți clic pe Casetă de instrumente. Va apărea caseta de instrumente.

Am adăugat o etichetă de state, deoarece această casetă combinată va conține o listă a unor state și un buton de trimitere pentru a trimite formularul.

Cum se inițializează o combobox în forma de utilizator?

Aceasta este partea în care majoritatea oamenilor greșesc. Uneori cursanții scriu codul pentru încărcarea valorilor în combobox, apoi trimit butoane. Și când încarcă forma de utilizator, caseta combinată nu afișează nicio valoare.

Pentru a încărca caseta combinată, ar trebui să scrieți codul, înainte de a încărca formularul de utilizator. Acest lucru se poate face în modul, c sau butonul unde încărcați formularul. Codul pentru încărcarea listei combobox ar trebui să apară înainte de comanda formname.show.

Se încarcă Combobox în subprogramul de apelare UserForm

Să presupunem că vreau să codific o serie de matrici în comboboxul de stat. Așa că voi scrie un subrutină care va încărca forma de utilizator pentru a completa informațiile. Vezi codul de mai jos.

Sub load_userform () states = Array ("Delhi", "UP", "UK", "Gujrat", "Kashmir") UserForm1.ComboBox1.List = state UserForm1.Show End Sub 

Definesc o matrice „state” care conține câteva nume de state indiene. Acum folosesc numele userform pentru a accesa combobox deoarece combobox face parte din userform.

Numele meu de utilizator este userform1. Și numele combobox este combobox1. Acestea sunt nume implicite. Le puteți schimba din fereastra proprietății.

Apoi inițializez proprietatea listei combobox cu stări.

Și apoi arăt userform1 folosind comanda show.

Când rulați codul de mai sus, combobox-ul va avea toate stările enumerate.

Inițializarea Combobox folosind UserForm_Initialize () Eveniment.

O altă metodă de încărcare a componentelor combobox pe userform este utilizarea evenimentului userform Initialize. Acest eveniment rulează înainte de încărcarea formei de utilizator. Orice doriți să faceți înainte ca formularul de utilizator să se încarce, îl puteți face aici. Unul dintre aceste lucruri este încărcarea elementelor combobox.

Deci, faceți dublu clic pe userform pentru a deschide zona de codare în obiectul userform. Acum, din meniul derulant din stânga, selectați forma de utilizator. Apoi, din meniul derulant din dreapta, selectați inițializare.

Se va introduce un subnume gol UserForm_Initialize (). Orice lucru scris în acest sub va fi executat înainte ca formularul de utilizator să apară.

Deci, scriem aici codul de inițializare pentru combobox.

Private Sub UserForm_Initialize () states = Array ("Delhi", "UP", "UK", "Gujrat", "Kashmir") UserForm1.ComboBox1.List = state End Sub 

Rețineți că nu avem comanda userform1.show aici. Se află încă în acel modul. Acest sub va fi folosit pentru a afișa pe ecran forma noastră de utilizator.

Sub load_userform () UserForm 1. Show End Sub 

Deci, utilizatorii vor rula load_userform sub folosind o anumită comandă, buton sau element macro atribuit. În timp ce compilatorul execută comanda de cod userform1.show, acesta execută imediat evenimentul useforma_initialize (). Apoi arată forma de utilizator utilizatorilor.

Note:

Dacă scrieți codul pentru a inițializa combobox cu valori în butonul de comandă 1 faceți clic, combobox nu va afișa nimic.

Pentru a inițializa comboboxul cu valori, încărcați-l în orice caz care apare înainte ca utilizatorul să ajungă în combobox pentru a umple.

Recuperarea valorii din ComboBox

Deci, folosim formulare pentru a obține niște informații. Și pentru a utiliza aceste informații, trebuie să le preluăm. Pentru a obține orice valoare de la userob combobox, folosim proprietatea combobox.value. În general, preluăm valorile din elementele formularului odată ce utilizatorul completează formularul și trimite formularul folosind butonul de trimitere. Deci putem folosi evenimentul commandbutton_click. Așadar, introduceți un buton de comandă și scrieți trimiteți pe el, dacă nu îl aveți deja. Acum faceți dublu clic pe el și veți fi în cadrul evenimentului commandButton_click.

Acum creați o variabilă pentru a stoca valoarea. Păstrați-l pe o foaie, dacă doriți. În cele din urmă, ieșiți din formular folosind comanda Descărcați-mă. Așa cum se arată în codul de mai jos.

Private Sub CommandButton1_Click () State = ComboBox1.Value ThisWorkbook.Worksheets ("sheet1"). Range ("A1") = State Unload Me End Sub 

Deci, băieți, așa folosiți combobox în formele de utilizator VBA. Sper că am fost explicativă și la obiect. Dacă aveți întrebări legate de acest subiect sau orice alte întrebări legate de VBA, întrebați-mă în secțiunea de comentarii de mai jos.

Noțiuni introductive despre Excel VBA UserForms| Voi explica cum să creați un formular în Excel, cum să utilizați setul de instrumente VBA, cum să gestionați intrările utilizatorului și, în cele din urmă, cum să stocați intrările utilizatorului. Vom trece prin aceste subiecte folosind un exemplu și un ghid pas cu pas.

Variabile VBA în Excel| VBA înseamnă Visual Basic pentru aplicații. Este un limbaj de programare de la Microsoft. Este utilizat cu aplicații Microsoft Office, cum ar fi MSExcel, MS-Word și MS-Access, în timp ce variabilele VBA sunt cuvinte cheie specifice.

Domeniul de aplicare variabil VBA Excel| În toate limbajele de programare, avem specificatori de acces variabil care definesc de unde poate fi accesată o variabilă definită. Excel VBA nu este o excepție. Și VBA are specificatori de domeniu.

Argumente ByRef și ByVal | Când un argument este transmis ca argument ByRef către un sub sau funcție diferit, este trimisă referința variabilei reale. Orice modificare adusă copiei variabilei se va reflecta în argumentul original.

Ștergeți foile fără solicitări de confirmare folosind VBA în Microsoft Excel | Deoarece ștergeți foi folosind VBA, știți ce faceți. Ați dori să spuneți Excel să nu afișeze acest avertisment și să șteargă afurisita de foaie.

Adăugați și salvați un registru de lucru nou folosind VBA în Microsoft Excel 2016| În acest cod, am creat mai întâi o referință la un obiect de registru de lucru. Și apoi l-am inițializat cu un nou obiect de registru de lucru. Avantajul acestei abordări este că puteți face operațiuni cu ușurință pe acest nou registru de lucru. Cum ar fi salvarea, închiderea, ștergerea etc.

Afișați un mesaj pe bara de stare Excel VBA| Bara de stare în excel poate fi utilizată ca monitor de cod. Când codul dvs. VBA este lung și faceți mai multe sarcini folosind VBA, dezactivați adesea actualizarea ecranului, astfel încât să nu vedeți ecranul care pâlpâie.

Dezactivați mesajele de avertizare folosind VBA în Microsoft Excel 2016| Acest cod nu numai că dezactivează alertele VBA, ci și crește eficiența în timp a codului. Să vedem cum.

Articole populare:

50 de comenzi rapide Excel pentru a vă crește productivitatea | Deveniți mai rapid la sarcina dvs. Aceste 50 de comenzi rapide vă vor face să lucrați și mai rapid pe Excel.

Funcția VLOOKUP în Excel | Aceasta este una dintre cele mai utilizate și populare funcții ale Excel, care este utilizată pentru a căuta valoarea din diferite intervale și foi.

COUNTIF în Excel 2016 | Numărați valorile cu condiții folosind această funcție uimitoare. Nu trebuie să vă filtrați datele pentru a număra anumite valori. Funcția Countif este esențială pentru a vă pregăti tabloul de bord.

Cum se utilizează funcția SUMIF în Excel | Aceasta este o altă funcție esențială a tabloului de bord. Acest lucru vă ajută să rezumați valori în condiții specifice.