/ / Excel VBA seznam

VBA seznam Excel VBA

Seznam je seznam, ze kterého může uživatel vybrat položku. Chcete-li vytvořit seznamu v Excel VBA, proveďte následující kroky.

1. Na kartě Vývojář klepněte na Vložit.

2. Ve skupině ActiveX Controls klepněte na pole List.

Vytvoření seznamu v aplikaci Excel VBA

3. Přetáhněte pole seznamu do listu.

Přetáhněte pole seznamu

Poznámka: můžete změnit název ovládacího prvku kliknutím pravým tlačítkem myši na ovládací prvek (ujistěte se, že jste zvolili Režim návrhu) a poté kliknutím na Vlastnosti. Prozatím opustíme ListBox1 jako název seznamu.

Vytvořit událost Open Workbook. Kód přidaný do události Open Workbook bude spuštěn v aplikaci Excel VBA při otevření sešitu.

4. Otevřete editor jazyka.

5. Poklepejte na tento sešit v aplikaci Průzkumník projektu.

6. V levém rozevíracím seznamu vyberte sešit a v pravém rozevíracím seznamu vyberte možnost Otevřít.

Otevřete událost sešit v aplikaci Excel VBA

7. Chcete-li přidat položky do seznamu, přidejte následující řádky kódu do události Open Workbook:

With Sheet1.ListBox1
    .AddItem "Paris"
    .AddItem "New York"
    .AddItem "London"
End With

Poznámka: použijte Sheet2, pokud je seznam umístěn na druhém listu, Sheet3, pokud je seznam umístěn na třetím listu apod. Pokud použijete tyto řádky kódů mimo událost Workbook Open, může být před přidáním následujícího řádku kódu kódové řádky. Tento kódový řádek vymaže seznam. Tímto způsobem se vaše položky nebudou přidávat vícenásobně, pokud kód spustíte vícekrát.

ListBox1.Clear

8. Chcete-li propojit toto seznamové pole s buňkou, klepněte pravým tlačítkem myši na seznam (zkontrolujte, zda je vybrán návrhový režim) a klikněte na Vlastnosti. Vyplňte D3 pro LinkedCell.

LinkedCell

Poznámka: také zobrazit vlastnost ListFillRange vyplnit seznam se seznamem buněk.

9. Uložte, zavřete a znovu otevřete soubor aplikace Excel.

Výsledek:

List Box

I když v některých situacích může být užitečné přímo umístit seznam do listu, seznam je zvláště užitečný při umístění na Userform.

Také si přečtěte: