Kombinovaná pole Excel VBA - snadná makra aplikace Excel

Obsah

Níže se podíváme na program v Excel VBA který vytvoří Userform, který obsahuje závislé kombinované boxy. Formulář uživatele, který vytvoříme, vypadá následovně:

Uživatel vybere zvířata z rozevíracího seznamu. V důsledku toho si uživatel může vybrat zvíře z druhého rozevíracího seznamu.

Uživatel vybere Sports z rozevíracího seznamu. Výsledkem je, že si uživatel může vybrat sport z druhého rozevíracího seznamu.

Chcete -li vytvořit tento Userform, proveďte následující kroky.

1. Otevřete editor jazyka. Pokud Průzkumník projektů není viditelný, klikněte na Zobrazit, Průzkumník projektů.

2. Klikněte na Vložit, Uživatelská forma. Pokud se Panel nástrojů nezobrazí automaticky, klikněte na Zobrazit, Panel nástrojů. Obrazovka by měla být nastavena níže.

3. Přidejte pole se seznamem (první vlevo, druhé vpravo) a příkazové tlačítko. Jakmile to bude dokončeno, výsledek by měl být v souladu s obrázkem formuláře uživatele zobrazeným dříve. Například vytvořte ovládací prvek pole se seznamem kliknutím na ComboBox z panelu nástrojů. Dále můžete přetáhnout pole se seznamem na Userform.

4. Můžete změnit názvy a titulky ovládacích prvků. Jména se používají v kódu Excel VBA. Titulky jsou ty, které se zobrazují na vaší obrazovce. Je dobrým zvykem změnit názvy ovládacích prvků, ale není to nutné, protože v tomto příkladu máme jen několik ovládacích prvků. Chcete -li změnit titulek Userform a příkazového tlačítka, klikněte na Zobrazit, Okno vlastností a klikněte na každý ovládací prvek.

5. Chcete -li zobrazit formulář Userform, umístěte na list příkazové tlačítko a přidejte následující řádek kódu:

Private Sub CommandButton1_Click ()
UserForm1.Show
End Sub

Nyní se chystáme vytvořit Sub UserForm_Initialize. Když použijete metodu Showform pro Userform, tento dílčí díl bude automaticky spuštěn.

6. Otevřete editor jazyka.

7. V aplikaci Project Explorer klepněte pravým tlačítkem na UserForm1 a poté klepněte na Zobrazit kód.

8. Z rozevíracího seznamu vlevo vyberte Userform. V pravém rozevíracím seznamu vyberte položku Inicializovat.

9. Přidejte následující řádky kódu:

Private Sub UserForm_Initialize ()
S ComboBox1
.AddItem "Zvířata"
.AddItem „Sport“
.Přidat položku „Jídlo“
Konec s
End Sub

Vysvětlení: Tyto řádky kódu vyplňují první pole se seznamem.

Nyní jsme vytvořili první část Userform. Ačkoli to už vypadá úhledně, nic se ještě nestane, když vybereme položku z prvního pole se seznamem.

10. V aplikaci Project Explorer dvakrát klikněte na UserForm1.

11. Poklepejte na první pole se seznamem.

12. Přidejte následující řádky kódu:

Private Sub ComboBox1_Change ()
Dim index jako celé číslo
index = ComboBox1.ListIndex
ComboBox 2. Jasné
Vyberte Case case
Případ je = 0
S ComboBox2
.AddItem „Pes“
.AddItem „Kočka“
.AddItem „Kůň“
Konec s
Případ je = 1
S ComboBox2
.AddItem „Tenis“
.AddItem „Plavání“
.AddItem „Basketball“
Konec s
Případ je = 2
S ComboBox2
.AddItem „Palačinky“
.Přidat položku „Pizza“
.AddItem „čínština“
Konec s
Konec Vybrat
End Sub

Vysvětlení: Excel VBA používá hodnotu indexu proměnné k testování každého následujícího příkazu Case, aby zjistil, kterými položkami by mělo být vyplněno druhé pole se seznamem. Projděte si náš program Select Case a dozvíte se více o struktuře Select Case.

13. Poklepejte na tlačítko Importovat.

14. Přidejte následující řádek kódu:

Private Sub CommandButton1_Click ()
Rozsah ("A1"). Hodnota = ComboBox2.Hodnota
End Sub

Výsledek:

Vám pomůže rozvoji místa, sdílet stránku s přáteli

wave wave wave wave wave