VBA kontrole u Excelu: Obrazac i ActiveX
⚡ Pametni sažetak
VBA kontrole u Excelu su interaktivni elementi, kao što su gumbi, potvrdni okviri i tekstualni okviri, koji grade grafičko korisničko sučelje. Ova stranica objašnjava kontrole obrasca, ActiveX kontrole, kako se te dvije obitelji razlikuju i detaljan primjer ActiveX naredbenog gumba.

VBA kontrole: VBA kontrola obrazaca i ActiveX kontrole u Excelu
VBA Form/GUI kontrole u Excelu
GUI je akronim za grafičko korisničko sučelje. GUI je dio programa s kojim korisnik komunicira. GUI se sastoji od kontrola. Ove Excel VBA kontrole mogu se koristiti u obrascu. Sljedeća tablica prikazuje neke od najčešće korištenih GUI VBA kontrola.
| S / N | kontrola | Description |
|---|---|---|
| 1 | naredba | Koristi se za izvršavanje koda |
| 2 | Combo Box | Koristi se za predstavljanje padajućeg popisa korisnicima |
| 3 | Provjeriti Box | Koristi se za istinite ili lažne vrijednosti. Više potvrdnih okvira može imati pravu vrijednost u isto vrijeme. |
| 4 | Popis Box | Koristi se za predstavljanje jednostavnog popisa korisnicima |
| 5 | Tekst Box | Koristi se za prihvaćanje korisničkog unosa |
| 6 | Traka za pomicanje | Koristi se za pružanje trake za pomicanje u svrhu navigacije. |
| 7 | Gumb za okretanje | Koristi se za povećanje ili smanjenje brojčanih vrijednosti klikom na strelice gore ili dolje koje se pojavljuju na gumbu za vrtnju |
| 8 | Gumb Option | Koristi se za istinite ili lažne vrijednosti. Samo jedan gumb opcija može imati pravu vrijednost u jednom trenutku. |
| 9 | Označiti | Koristi se za prikaz statičkog teksta korisniku |
| 10 | Slika | Koristi se za prikaz slika |
| 11 | Toggle Gumb | Tipka koja ima pritisnuto i nepritisnuto stanje. |
U VBA GUI kontroli,
- Kliknite na karticu programera
- Pritisnite padajući gumb Umetni
Dobit ćete sljedeću padajuću ploču
Ako prijeđete mišem iznad VBA kontrola obrasca, naziv kontrole će se pojaviti kao što je prikazano u nastavku
Dodavanje GUI kontrola proračunskoj tablici
Sada ćemo dodati naredbeni gumb u našu radnu knjigu, za to moramo
- Kliknite padajući izbornik Umetni
- Kliknite na naredbeni gumb (ActiveX kontrola) kao što je prikazano na gornjoj slici
- Povucite i nacrtajte gumb na listu
Postavljanje svojstava GUI kontrole
Sada ćemo postaviti naslov gumba na nešto opisnije
- Desnom tipkom miša kliknite gumb jednakosti koji smo upravo izradili
- Odaberite izbornik svojstava
- Dobit ćete sljedeći prozor svojstava
- Postavite svojstvo name na btnButton. Svojstvo name koristi se za identifikaciju kontrole u prozoru koda. btn je prefiks za gumb.
- Postavite svojstvo Caption na Click Me. Tekst u svojstvu naslova je ono što će korisnici vidjeti na gumbu.
Zatvorite prozor kada završite.
Dobit ćete sljedeće rezultate.
Razlika između kontrola obrasca i ActiveX kontrola
Excel nudi dvije obitelji kontrola, a odabir prave olakšava projekt. Kontrole obrasca ugrađene su u Excel i pokreću jedan dodijeljeni makro, dok su ActiveX kontrole programabilni objekti koji reagiraju na mnoge događaje putem VBA koda. Tablica u nastavku uspoređuje te dvije.
| svojstvo | Kontrole obrazaca | ActiveX kontrole |
|---|---|---|
| Postavljanje | Jednostavno; dodijelite jedan makro kontroli | Za odgovor je potreban VBA kod događaja |
| Nekretnine | Ograničeni skup opcija | Opsežno, uključujući font, boju i ponašanje |
| Događaji | Jedna radnja na klik | Mnogi događaji kao što su Click, Change i GotFocus |
| Kompatibilnost | Radi na Windows i Mac Excel | Radi na Windows Samo u Excelu |
| Najprikladniji za | Brzi, jednostavni zadaci na radnom listu | Interaktivni i dinamični korisnički obrasci |
Ukratko, koristite kontrolu obrasca kada je dovoljan jedan makro, a odaberite ActiveX kontrolu kada sučelje treba bogata svojstva ili mora reagirati na nekoliko korisničkih događaja.
Preduvjet
Prije izrade primjera ActiveX-a, pripremite radnu knjigu tako da kontrole budu dostupne i da se makroi mogu spremiti.
konfigurirati Microsoft nadmašiti
Kao što smo vidjeli u prethodnom vodiču, provjerite ima li vaša vrpca ikonu "Developer" kao što je prikazano ovdje.
Sada preimenujte sheet1 u “VBA Operator” kao što je prikazano na snimci zaslona u nastavku. Spremite radnu knjigu u datoteci s ekstenzijom Excel Macro-Enabled Workbook (*.xlsm). (pogledajte sliku u nastavku)
Nakon toga kliknite na gumb Spremi.
Kako koristiti ActiveX kontrolu u VBA
Kada je radna knjiga spremna, možemo dodati funkcionalni ActiveX gumb. U ovom odjeljku ActiveX kontrole u Excelu, vidjet ćemo kako uključiti gumb 'commandclick' u VBA i izvršiti program pomoću gumba.
Korak 1) U ovom koraku kliknite opciju "gumb za umetanje" iz Active X kontrole. Zatim odaberite opciju naredbenog gumba.
Korak 2) Za umetanje "clickcommandbutton1" povucite pokazivač miša na Excel list.
Korak 3) Zatim kliknite desnom tipkom miša na gumb naredbe i odaberite opciju "Prikaz" Code".
Korak 4) Provjerite jeste li na pravom listu. Otvorit će se uređivač koda. Unesite svoju šifru.
- U kodu smo definirali raspon od A1 do A10.
- Ovaj raspon definira broj ćelije u Excel listu od "A1 do A10".
- Zatim definiramo niz znakova "Guru99 VBA vodič” u kodu
- Dakle, kada kliknete na "naredbeni gumb" u Excelu, trebalo bi ispisati "Guru99 VBA vodič” u rasponu ćelija “A1 do A10”.
Korak 5) U sljedećem koraku spremite kodnu datoteku i zatim izađite iz uređivača. Za povratak na Excel datoteku kliknite ikonu Excel lista na krajnjoj lijevoj strani.
Korak 6) U Excel listu vidjet ćete da je uključena kartica Način dizajna. Provjerite je li "ISKLJUČENO" ili inače vaš kod neće raditi.
Korak 7) Kada je način dizajna isključen, na njemu neće biti označeno zelenom bojom. Sada možete kliknuti na naredbeni gumb.
Korak 8) Kliknite na “CommandButton1”. Ispisat će se “Guru99 VBA vodič” u rasponu ćelija “A1 do A10”.
Preuzmite Excel koji sadrži gornji kod
Uobičajeni događaji ActiveX kontrola u VBA-u
ActiveX kontrola je moćna jer reagira na događaje, odnosno radnje koje korisnik izvodi na kontroli. Svaki događaj pokreće vlastitu potprogramu, pa se isti gumb može ponašati drugačije ovisno o tome što korisnik radi. Najčešći događaji navedeni su u nastavku.
- Kliknite – pokreće kôd kada korisnik klikne na kontrolu, događaj korišten u gornjem primjeru.
- Promijeniti – pokreće se kada se vrijednost kontrole promijeni, kao što je typing u tekstnom okviru ili odabirom stavke iz kombiniranog okvira.
- Imam fokus / Izgubljen fokus – pokreće se kada kontrola dobije ili izgubi fokus, korisno za provjeru unosa.
- Pritiskom na tipku – pokreće se kada korisnik pritisne tipku dok je kontrola aktivna.
- Pomakni miš – pokreće se kada se pokazivač miša pomakne preko kontrole.
- Dvostruki klik – pokreće se kada korisnik dvaput klikne na kontrolu.
Za dodavanje koda za bilo koji događaj, uključite Način dizajna, desnom tipkom miša kliknite kontrolu, odaberite Prikaz Codei odaberite događaj s padajućeg popisa na vrhu prozora koda.
















