Přejít na hlavní obsah

Combobox VBA Excel: jak jej vyplnit na listu

Combobox v aplikaci VBA Excel je uživatelsky přívětivý ovládací prvek, který umožňuje uživateli vybrat si z nabízených možností. S ním je možné uspořádat uživatelsky přívětivé rozhraní pro práci s daty na listu.

Chcete-li vyplnit Combobox na listu, musíte použít VBA kód. Nejprve byste měli přidat ovládací prvek Combobox na list a poté do editoru VBA napsat kód, který jej vyplní požadovanými daty.

Jedním ze způsobů, jak vyplnit Combobox, je použití standardní funkce AddItem. Chcete-li to provést, musíte zadat název Combobox a hodnotu, kterou chcete přidat. Opakováním této operace kolikrát, můžete vyplnit Combobox s požadovanými hodnotami.

Lze také vyplnit Combobox pomocí cyklistické konstrukce a polí. Vytvoření pole s požadovanými hodnotami a následné přidání hodnot z pole do comboboxu umožní automatizaci procesu vyplňování hodnot a učiní kód flexibilnějším a použitelnějším.

Instalace ComboBox VBA Excel

Combobox v Excelu VBA je ovládací prvek, který umožňuje uživateli vybrat si jednu možnost z prezentovaného seznamu. Instalace comboboxu v Excelu VBA vyžaduje následující kroky:

  1. Otevřete Visual Basic Pro aplikace (VBA) v Excelu kliknutím na Alt + F11.
  2. Vyberte list, na který chcete Combobox umístit.
  3. Klikněte na kategorii Vložení v hlavní nabídce a vyberte Combobox ze seznamu položek formuláře. Nakreslete Combobox na list.
  4. Klikněte pravým tlačítkem na Combobox a vyberte Vlastnosti.
  5. V okně vlastností Combobox vyhledejte vlastnost ListFillRange a zadejte rozsah buněk, které obsahují data, která chcete použít jako možnosti výběru. Například "A1: A5".
  6. Pro přizpůsobení dalších vlastností comboboxu, jako jsou LinkedCell nebo ColumnCount, použijte další nastavení vlastností.
  7. Klikněte na tlačítko OK pro aplikaci změn.

Nyní jste úspěšně nainstalovali Combobox v Excelu VBA. Uživatel si bude moci vybrat hodnoty z prezentovaného seznamu a zobrazí se v comboboxu.

Jak přidat Combobox na excelový list VBA

Chcete-li přidat Combobox na list aplikace Excel, postupujte podle následujících kroků:

  1. Otevřít Editor VBA kliknutím Alt + F11.
  2. Vyberte požadovaný list, kam chcete přidat Combobox. Vyhledejte jej v okně "Project Explorer" (Průzkumník projektů).
  3. Klikněte pravým tlačítkem na list a vyberte Insert (Vložit) ->UserForm (Uživatelský formulář).
  4. Na formuláři uživatele, vyhledejte ovládací prvek Combobox v panelu nástrojů (pokud není zobrazen, vyberte View (Výhled) ->ToolBox (Ovládací panel).
  5. Klikněte na položku Combobox a nakreslete ji do tvaru.
  6. Na uživatelském formuláři, klikněte pravým tlačítkem na Combobox a vyberte Properties (Vlastnosti).
  7. Ve vlastnostech Combobox, můžete nastavit název pro Combobox, výšku, šířku, polohu a další vlastnosti ovládacího prvku.
  8. Když je Combobox připraven k použití, můžete přidat kód VBA k vyplnění dat z listu aplikace Excel nebo nastavit data přímo v kódu.
  9. Chcete-li vyplnit data Combobox z listu aplikace Excel, musíte použít následující kód:

Set ws = ThisWorkbook.Worksheets ("Název")
Set rng = ws.Range("A1:A10")

With UserForm1.Combobox1
.Clear
.List = rng.Value
End With

V kódu je "Název_listy" název listu Excel, ze kterého je třeba vzít data k vyplnění comboboxu. "A1:A10" je rozsah buněk s daty na listu.

Nyní je Combobox připraven k použití v excelovém listu. Můžete nastavit další vlastnosti comboboxu, jako je akce při výběru položky, počáteční hodnotu a další, podle vašich potřeb.

Vyplnění comboboxu v Excelu

Existuje několik způsobů, jak vyplnit Combobox v Excelu. Jedním z nich je použití dat z rozsahu na listu. K tomu je třeba provést následující kroky:

  1. Přidat Combobox na list.
  2. Zadejte zdroj dat pro Combobox (rozsah na listu, který obsahuje seznam možností).
  3. Připojit Combobox k makru, které bude zpracovávat výběr uživatele.

Podívejme se blíže na každý krok. Chcete-li přidat Combobox na list, postupujte takto:

  1. Otevřete list, na kterém bude Combobox.
  2. V nabídce aplikace Excel vyberte kartu Vývojář (pokud se karta Vývojář nezobrazí, aktivujte ji v nastavení aplikace Excel).
  3. Na kartě Vývojář klikněte na tlačítko Vložit ve skupině ovládací prvky.
  4. V seznamu, který se zobrazí, vyberte Combobox (ovládací prvek s rozevíracím seznamem).
  5. Nakreslete Combobox na list výběrem požadované velikosti a umístění.

Po přidání comboboxu na list je dalším krokem uvedení zdroje dat pro Combobox. Chcete-li to provést, postupujte takto:

  1. Vyberte přidaný Combobox na listu.
  2. Na kartě Vývojář v nabídce aplikace Excel, ve skupině vlastnosti, vyhledejte vlastnost "ListFillRange".
  3. Zadejte rozsah na listu, který obsahuje seznam možností, které by měly být k dispozici v comboboxu.

A nakonec přivážeme Combobox k makru, které bude zpracovávat výběr uživatele:

  1. Na kartě Vývojář v nabídce Excel, ve skupině Nástroje, vyhledejte tlačítko návrhář položek.
  2. Kliknutím na tlačítko" návrhář prvků " otevřete okno pro úpravy ovládacího prvku.
  3. V okně úpravy ovládacího prvku vyhledejte vlastnost "OnAction".
  4. Zadejte název makra, které bude zpracovávat výběr uživatele z comboboxu.

Po provedení všech těchto kroků bude Combobox vyplněn údaji ze zadaného rozsahu na listu a výběr uživatele bude předán do zadaného makra k dalšímu zpracování.

Vyplnění comboboxu v Excelu je pohodlný způsob, jak poskytnout uživateli výběr z předdefinovaného seznamu možností. Pomocí kombinace funkcí a maker VBA je možné vytvořit interaktivní uživatelské rozhraní pro práci s daty v Excelové tabulce.

Jak vyplnit Combobox daty z rozsahu

Combobox (rozbalovací seznam) v Excelu VBA vám umožňuje vybrat jednu hodnotu z předem daných možností. Chcete-li vyplnit Combobox daty z rozsahu buněk v Excelu, musíte postupovat podle následujících kroků:

  1. Přiřaďte Combobox vytvořený na listu Excelu k objektu modulu VBA.
  2. Určete rozsah buněk, ze kterých chcete ComboBox vyplnit.
  3. Pomocí funkce AddItem přidejte položky do comboboxu.

Příklad kódu pro vyplnění prvků Combobox z rozsahu je následující:

Private Sub UserForm_Initialize()Dim rng As RangeDim cell As RangeSet rng = Sheets("Sheet1").Range("A1:A10") 'Замените "Sheet1" на имя вашего листа и "A1:A10" на диапазон ячеекFor Each cell In rngComboBox1.AddItem cell.ValueNext cellEnd Sub

V uvedeném kódu se ComboBox nazývá ComboBox1. Zde používáme initializovanou událost k vyplnění comboboxu při jeho otevření.

Vytvoříme objekt Range nazvaný rng a nastavíme mu rozsah buněk, ze kterých chceme ComboBox vyplnit. Poté procházíme každou buňkou v tomto rozsahu a přidáváme hodnotu buňky v comboboxu pomocí funkce AddItem.

Po provedení tohoto kódu bude Combobox vyplněn prvky z daného rozsahu buněk (např. "A1:A10"). Rozsah buněk můžete snadno změnit zadáním jiného rozsahu v proměnné rng.

Nyní, když víte, jak vyplnit Combobox daty z rozsahu buněk v Excelu VBA, můžete snadno nakonfigurovat Combobox tak, aby zobrazoval a vybíral předem definované hodnoty ve vaší excelové tabulce.

Příklad vyplnění Combobox hodnotami z pole

Chcete-li vyplnit ComboBox hodnotami z pole v aplikaci VBA Excel, postupujte podle následujících kroků:

  1. Oznamte proměnnou pro pole, které bude obsahovat hodnoty pro Combobox: Dim values () as Variant
  2. Přiřaďte proměnnou pole hodnoty: values = Array ("hodnota 1", "hodnota 2","hodnota 3")
  3. Zadejte vlastnost List Combobox a vyplňte ji hodnotami z pole: ComboBox1.List = values

Nyní bude Combobox vyplněn hodnotami ze zadaného pole a uživatel si bude moci vybrat jednu z těchto hodnot.

Zpracování výběru v comboboxu

Poté, co uživatel vybere položku z comboboxu v Excelu pomocí VBA, je možné provádět různé operace v závislosti na zvolené hodnotě.

Pro zpracování výběru v comboboxu lze použít událost Change. Pokud například máme Combobox s názvem ComboBox1, můžeme vytvořit postup zpracování výběru následovně:

Private Sub ComboBox1_Change()Dim selectedValue As String' Сохраняем выбранное значениеselectedValue = ComboBox1.Value' Выполняем операции в зависимости от выбранного значенияSelect Case selectedValueCase "Значение 1"' Операции, выполняемые при выборе "Значение 1"Case "Значение 2"' Операции, выполняемые при выборе "Значение 2"Case Else' Операции, выполняемые при выборе другого значенияEnd SelectEnd Sub

V uvedeném příkladu vytvoříme proměnnou selectedValue, do které uložíme vybranou hodnotu Combobox. Poté pomocí příkazu Select Case provedeme určité operace v závislosti na zvolené hodnotě. V příkladu máme tři možné hodnoty: "Hodnota 1", "hodnota 2" a další hodnota, která se neshoduje s žádnou z nich.

Můžete přidat svůj vlastní kód do každého bloku v operátoru Select Case, abyste mohli provádět požadované operace. Můžete například změnit hodnoty jiných buněk nebo provést jiné akce na základě zvolené hodnoty.

Zpracování výběru v comboboxu umožňuje vytvářet interaktivní aplikace a spravovat data v excelovém listu podle volby uživatele.