Excel VBA má konstrukci IF Then Else, kterou můžete použít k analýze více podmínek a provádění kódů na základě těchto podmínek.
Další podobný konstrukt, který vám umožňuje zkontrolovat více podmínek, je příkaz SELECT CASE.
Select Case je užitečný, když máte tři nebo více podmínek, které chcete zkontrolovat. Můžete to také použít se dvěma podmínkami (ale mám pocit, že v těchto případech je snadnější použít Else).
Jednoduchý příklad, kde je příkaz Select Case užitečný, když chcete získat hodnocení student na základě známek, které skóroval (popsáno jako příklad dále v tomto výukovém programu).
Poznámka: Všechny ukázkové kódy obsažené v tomto výukovém programu mají být umístěny v modulu ve VBA.
Tento kurz pokrývá:
Vyberte syntaxi případů
Níže je uvedena syntaxe Select Case v aplikaci Excel VBA:
Select Case Test_ExpressionCase Value_1Code Block when Test_Expression = Value_1Case Value_2Code Block when Test_Expression = Value_2Case Value_3Code Block when Test_Expression = Value_3Case ElseCode Block when none of the case conditions are metEnd Select
- Test_Expression: Toto je výraz, jehož hodnotu analyzujeme pomocí různých případů (vysvětleno lépe pomocí níže uvedených příkladů).
- Podmínka_1, Podmínka_2,…: Toto jsou podmínky, za kterých je textový výraz testován. Pokud splňuje podmínku, provede se blok kódu pro danou podmínku.
Pro každý příkaz Select Case, který používáte, musíte použít příkaz End Select.
Poznámka: Jakmile je podmínka splněna, VBA ukončí konstrukci výběru případů. Pokud tedy máte pět podmínek a druhá podmínka je splněna, VBA ukončí Select Case – a ostatní podmínky nebudou testovány.
Vyberte příklady případů
Nyní k abychom lépe porozuměli tomu, jak používat příkaz Select Case ve VBA, pojďme si projít několik příkladů.
Všimněte si, že většina příkladů v tomto tutoriálu má vysvětlit tento koncept. Toto může nebo nemusí být nejlepší způsob, jak dokončit práci.
Začněme jednoduchým příkladem toho, jak nám Select Case umožňuje kontrolovat podmínky.
Příklad 1 – Zkontrolujte čísla
V níže uvedeném příkladu kód vyzve uživatele k zadání libovolného čísla mezi 1 a 5 a poté zobrazí okno se zprávou s číslem, které uživatel zadal.
Sub CheckNumber()Dim UserInput As IntegerUserInput = InputBox("Please enter a number between 1 and 5")Select Case UserInputCase 1MsgBox "You entered 1"Case 2MsgBox "You entered 2"Case 3MsgBox "You entered 3"Case 4MsgBox "You entered 4"Case
read more