VBA ComboBox | Jak vytvořit a používat ComboBox ve VBA?

ComboBox aplikace Excel VBA

ComboBox je funkce uživatelského formuláře ve VBA , liší se od textových polí, protože textová pole obsahují pouze text a umožňujeme uživateli zadávat jakýkoli typ dat, ale pomocí kombinovaných polí omezujeme uživatele na požadovaný typ odpovědí data jsou tedy uspořádaná, jsou podobná ověření seznamu dat v aplikaci Excel.

ComboBox lze přirovnat k rozevíracímu seznamu v aplikaci Excel, v pracovních listech jsme použili ověření dat k poskytnutí rozevíracího seznamu, ale ve VBA existuje funkce uživatelského formuláře, kde se používá k poskytnutí rozevíracího seznamu v jakékoli uživatelské formě, ale pokud chceme použít pole se seznamem v aplikaci Excel, můžeme k němu přistupovat také z části pro vývojáře, kde můžeme vytvořit pole se seznamem pro jednotlivé nebo více buněk.

Rozbalovací seznam je velmi podobný rozevíracímu seznamu, který máme v listu aplikace Excel, s rozbalovacím seznamem můžeme ukládat předem určené hodnoty, takže uživatelé ze seznamu budou moci vybrat výběr ze seznamu. Combo Box se obecně používá společně s uživatelskými formuláři jako součást získávání vstupů od uživatelů.

Uživatelské formuláře jsou užitečné, ale díky použití jiných nástrojů ve formuláři uživatele je formulář uživatele tak výjimečný. Jedním z nástrojů, které často používáme jako nástroj pro uživatelskou formu, je „ComboBox“.

Nejlepší 2 způsoby, jak vytvořit VBA ComboBox

Tuto šablonu VBA Combo Box Excel si můžete stáhnout zde - Šablona VBA Combo Box Excel

# 1 - Použití přímého kódování

Nejprve uvidíme, jak používat Combo Box s listem. Otevřete kterýkoli z listů v sešitu aplikace Excel, přejděte na kartu Vývojář a na této kartě máme nástroj s názvem „Vložit“. Klikněte na toto a pod tím máme dvě možnosti Active X Controls & Form Controls in Excel.

Z nabídky „Ovládací prvky Active X“ vyberte „Rozevírací seznam“.

Nyní můžete tento objekt nakreslit na kterýkoli z pracovních listů.

Klikněte pravým tlačítkem na rozbalovací seznam a vyberte možnost „Vlastnosti“.

Když vyberete vlastnosti, otevře se obrovský seznam vlastností pole se seznamem.

Pro toto pole se seznamem uvedeme seznam názvů oddělení, takže změňte vlastnost názvu pole se seznamem na  „DeptComboBox“ .

Nyní bude toto pole se seznamem označováno názvem „DeptComboBox“ . Musíme uvést předem určená jména oddělení, takže zde mám seznam názvů oddělení.

Nyní musíme tyto hodnoty přidat do seznamu se seznamem, můžeme to udělat dvěma způsoby, prostřednictvím kódování nebo prostřednictvím správce jmen.

Poklepejte na Combobox a dostanete se k postupu makra VBA.

Když se sešit otevře, musíme tyto názvy oddělení vidět, takže dvakrát klikněte na „ThisWorkbook“.

Z rozevíracího seznamu vyberte „Sešit“.

Z možností vyberte „Otevřít“.

Nyní vytvoří mezeru jako níže.

Uvnitř tohoto makra zadejte níže uvedený kód.

Kód:

 Soukromý dílčí sešit_otevření () s listy ("list1"). DeptComboBox .AddItem "Finance" .AddItem "Marketing" .AddItem "Merchandising" .AddItem "Operace" .AddItem "Audit" .AddItem "Klientský servis" Končit s koncem Sub 

Dobře, teď uložte a zavřete sešit, když sešit znovu otevřete, mohli jsme v něm vidět názvy oddělení.

# 2 - Používání UserForm

Dalším způsobem přidávání hodnot do ComboBoxu je použití uživatelského formuláře. Nejprve pojmenujte buňky jako „Oddělení“.

Přejděte do editoru jazyka a vložte uživatelský formulář z možnosti INSERT.

Nyní je vytvořen nový uživatelský formulář.

Vedle formuláře uživatele vidíme „Toolbox“ z tohoto panelu nástrojů můžeme vložit „Combo Box“.

Nyní je pole se seznamem vloženo do formuláře uživatele, v této metodě pro otevření možnosti vlastností vyberte pole se seznamem a stisknutím klávesy F4 otevřete okno vlastností.

Přejděte dolů na kartu vlastností a vyberte „Zdroj řádků“.

Pro tento „Zdroj řádků“ zadejte název, který jsme dali buňkám s názvy oddělení.

Nyní toto pole se seznamem obsahuje odkaz na název „Oddělení“ .

Nyní spusťte formulář uživatele pomocí tlačítka spuštění.

Nyní můžeme vidět seznam názvů oddělení v poli se seznamem na formuláři uživatele.

Prakticky uživatelský formulář spojený se seznamem, textovým polem a mnoha dalšími nástroji. Vytvoříme jednoduchý uživatelský formulář pro zadávání dat s textovým a kombinovaným polem.

Vytvořte uživatelský formulář jako níže.

Vytvořte dvě příkazová tlačítka.

Poklepáním na tlačítko „ODESLAT“ se otevře pod makrem.

Uvnitř tohoto makra přidejte níže uvedený kód.

Kód:

 Private Sub CommandButton1_Click () Dim LR As Long LR = Buňky (Rows.Count, 1). End (xlUp). Row + 1 Buňky (LR, 1). Hodnota = TextBox1.Value Buňky (LR, 2). Hodnota = ComboBox1 Koncová hodnota hodnoty 

Nyní dvakrát klikněte na tlačítko „ZRUŠIT“ a přidejte níže uvedený kód.

Nyní v listu vytvořte šablonu jako níže.

Nyní spusťte uživatelský formulář a otevře se takto.

Zadejte jméno zaměstnance a v rozevíracím seznamu vyberte název oddělení.

Klikněte na tlačítko ODESLAT a podívejte se na kouzlo.

Získali jsme hodnoty zadané ve formátu tabulky, který jsme vytvořili.

Věci k zapamatování

  • COMBO BOX má také své vlastní vlastnosti.
  • Přidání hodnot do seznamu přichází dvěma způsoby, jedním je způsob kódování a druhým odkaz na název rozsahu.
  • COMBO BOX je obvykle součástí uživatelského formuláře.

$config[zx-auto] not found$config[zx-overlay] not found