Kombinovaný box Excel VBA - jednoduché makrá programu Excel

Obsah

Nižšie sa pozrieme na program v Excel VBA ktorý vytvorí užívateľský formulár, ktorý obsahuje a viacstĺpcový kombinovaný box.

Forma užívateľa, ktorú vytvoríme, vyzerá nasledovne:

Ak chcete vytvoriť tento formulár používateľa, vykonajte nasledujúce kroky.

1. Otvorte editor jazyka Visual Basic. Ak Prieskumník projektov nie je viditeľný, kliknite na Zobraziť, Prieskumník projektu.

2. Kliknite na položku Vložiť, Používateľský formulár. Ak sa Panel s nástrojmi nezobrazí automaticky, kliknite na položku Zobraziť, Panel s nástrojmi. Vaša obrazovka by mala byť nastavená nižšie.

3. Pridajte štítok, pole so zoznamom a tlačidlá príkazov. Keď je to dokončené, výsledok by mal byť v súlade s obrázkom používateľského formulára zobrazeným skôr. Napríklad vytvorte ovládací prvok rozbaľovacieho poľa kliknutím na ComboBox v Paneli s nástrojmi. Ďalej môžete na Userforme potiahnuť kombinované pole.

4. Môžete zmeniť názvy a titulky ovládacích prvkov. Mená sa používajú v kóde programu Excel VBA. Titulky sú tie, ktoré sa zobrazujú na vašej obrazovke. Je dobrým zvykom zmeniť názvy ovládacích prvkov, ale nie je to potrebné, pretože v tomto prípade máme iba niekoľko ovládacích prvkov. Ak chcete zmeniť popis tlačidiel Userform, Label a Command, kliknite na položku Zobraziť, Okno vlastností a kliknite na jednotlivé ovládacie prvky.

5. Ak chcete zobraziť formulár Userform, umiestnite na pracovný hárok príkazové tlačidlo a pridajte nasledujúci riadok kódu:

Súkromné ​​sub CommandButton1_Click ()
UserForm1.Show
Koniec pod

Teraz vytvoríme podskupinu UserForm_Initialize. Keď pre metódu Userform použijete metódu Show, táto čiastka sa automaticky spustí.

6. Otvorte editor jazyka Visual Basic.

7. V programe Project Explorer kliknite pravým tlačidlom na UserForm1 a potom kliknite na položku Zobraziť kód.

8. V ľavom rozbaľovacom zozname vyberte položku Userform. V pravom rozbaľovacom zozname vyberte položku Inicializovať.

9. Pridajte nasledujúce riadky kódu:

Private Sub UserForm_Initialize ()
ComboBox1.ColumnCount = 2
Tlmené filmy (1 až 5, 1 až 2) ako reťazec
Dim i ako celé číslo, j Ako celé číslo
Filmy (1, 1) = "Pán prsteňov"
Filmy (2, 1) = "Rýchlosť"
Filmy (3, 1) = "Hviezdne vojny"
Filmy (4, 1) = "Krstný otec"
Filmy (5, 1) = "Pulp Fiction"
Filmy (1, 2) = "Dobrodružstvo"
Filmy (2, 2) = "Akcia"
Filmy (3, 2) = "Sci-Fi"
Filmy (4, 2) = "Zločin"
Filmy (5, 2) = "Dráma"
ComboBox1.List = Filmy
Koniec pod

Vysvetlenie: Prvý riadok kódu nastavuje počet stĺpcov rozbaľovacieho poľa na 2. Namiesto nastavenia počtu stĺpcov za behu môžete toto nastavenie nakonfigurovať aj v čase návrhu. Aby ste to dosiahli, kliknite pravým tlačidlom myši na ovládací prvok kombinovaného poľa, kliknite na položku Vlastnosti a nastavte vlastnosť ColumnCount na hodnotu 2. Ďalej deklarujeme a inicializujeme dvojrozmerné pole. Posledný riadok kódu priradí pole do poľa so zoznamom.

Teraz sme vytvorili prvú časť užívateľského formulára. Napriek tomu, že to už vyzerá úhľadne, nič sa nestane, keď klikneme na príkazové tlačidlá vo formulári Userform.

10. V programe Project Explorer dvakrát kliknite na položku UserForm1.

11. Dvakrát kliknite na tlačidlo OK.

12. Pridajte nasledujúce riadky kódu:

Súkromné ​​sub CommandButton1_Click ()
Vylož ma
MsgBox „Vybrali ste“ & ComboBox1.Hodnota
Pri chybe Pokračovať ďalej
MsgBox „Páči sa vám“ & ComboBox1. Stĺpec (1) a „filmy“
Koniec pod

Poznámka: tieto riadky kódu zatvárajú užívateľský formulár Excel VBA a zobrazujú vybratú položku a žáner. Príkaz „Pri chybe Pokračovať ďalej“ ignoruje chybu, keď používateľ vyplní svoj vlastný film (v tomto prípade nie je k dispozícii žiadny žáner).

13. Dvakrát kliknite na tlačidlo Zrušiť.

14. Pridajte nasledujúci riadok kódu:

Súkromný sub CommandButton2_Click ()
Vylož ma
Koniec pod

Výsledok získate, keď vyberiete položku Rýchlosť a kliknete na tlačidlo OK.

Vám pomôže rozvoju miesta, zdieľať stránku s priateľmi

wave wave wave wave wave