Obsah
V tomto článku vám ukážu, jak můžete volat Sub od jiného Sub nebo Funkce na adrese VBA na adrese Excel Naučíte se volat Sub s argumenty nebo bez nich, stejně jako oba Veřejnost a Soukromé Náhradníci .
Jak zavolat podřízený modul ve VBA v aplikaci Excel (Rychlé zobrazení)
Poznámka: Zde a Sub s názvem Sub2 volá a Sub s názvem Sub1 .
Stáhnout cvičebnici
Volání VBA Sub.xlsm
Stáhněte si tento cvičební sešit a procvičte si tento úkol při čtení tohoto článku.
4 způsoby volání podřízeného modulu ve VBA v aplikaci Excel
Zde máme Sub na adrese VBA s názvem Sub1 .
Pokud spustíte Sub1 , dostanete zprávu "Sub1 je spuštěn."
Naším dnešním cílem je naučit se, jak můžeme tuto výzvu Sub od jiného Sub nebo Funkce všemi možnými způsoby.
1. Volání podřízeného objektu bez argumentů z jiného podřízeného objektu ve VBA v aplikaci Excel
Nejprve zavoláme Sub bez jakéhokoli argumentu od jiného Sub na adrese VBA .
Zde, Sub1 je Sub bez argumentů.
Nyní zavoláme Sub Sub1 od jiného Sub s názvem Sub2 .
Vyvolání Sub Sub1 od jiného Sub , musíte použít řádek kódu:
Sub1
Nebo
Volání Sub1
Pokud nyní spustit Sub2 , Sub1 bude zavolána zpráva "Sub1 je spuštěn." se zobrazí.
2. Volání podřízeného objektu s argumenty z jiného podřízeného objektu ve VBA v aplikaci Excel
Nyní zavoláme Sub s argumenty z jiného Sub na adrese VBA .
Zde jsme změnili Sub Sub1 tak, aby obsahoval argument nazvaný Input_Value a po spuštění zobrazí tento argument.
Chcete-li to nazvat Sub od jiného Sub ( Sub2 ), musíme použít řádek kódu:
Sub1(Vstupní_hodnota)
Nebo
Volání Sub1(Vstupní_hodnota)
Zde jsme použili:
Volání Sub1(10)
Když teď spustíme Sub2 , Sub1 bude volán se vstupem 10 a 10 se zobrazí v Pole pro zprávy .
Podobné čtení:
- Jak vrátit hodnotu ve funkci VBA (pole i jiné hodnoty)
- Použití funkce LCase ve VBA v aplikaci Excel (se 4 příklady)
- Jak používat funkci VBA SPLIT v aplikaci Excel (5 příkladů)
- Použití funkce TRIM ve VBA v aplikaci Excel (definice + kód VBA)
3. Volání podřízené funkce s/bez argumentů z funkce definované uživatelem v prostředí VBA v aplikaci Excel
Můžete také zavolat Sub od a Funkce definovaná uživatelem na adrese VBA .
⧭ Sub bez argumentů
Zavolejme Sub bez argumentů.
Zde jsme opět změnili Sub Sub1 na ten bez argumentů.
Nyní vytvoříme Funkce s názvem Funkce1 a zavolejte Sub1 z této funkce.
Volání Sub z funkce, je řádek kódu, který se má použít, stejný:
Sub1
Nebo
Volání Sub1
Pokud nyní vložíte Funkce1 v libovolné buňce pracovního listu, Sub1 bude zavolán a Pole pro zprávy zobrazí "Sub1 je spuštěn." .
⧭ Sub s argumenty
Můžete také zavolat Sub s argumenty z Funkce definovaná uživatelem na adrese VBA na adrese Excel .
Zde jsme změnili Sub1 k tomu, který má argumenty.
Nyní jsme zavolali Sub1 z Funkce1 podle řádku kódu:
Volání Sub1(10)
Pokud nyní vložíme Funkce1 v libovolné buňce našeho pracovního listu, zobrazí se. 10 v a Pole pro zprávy .
4. Volání soukromého podřízeného z jiného podřízeného nebo funkce ve VBA v aplikaci Excel
Až dosud jsme nazývali Veřejný subdodavatel od jiného Sub nebo Funkce . Tentokrát si ukážeme, jak můžete zavolat příkaz Soukromý subdodavatel od jiného Sub nebo Funkce na adrese VBA .
⧭ Volání z náhradního zařízení:
Volat můžete pouze Soukromý subdodavatel od jiného Sub pokud jsou oba ve stejném modulu vaší VBA okno.
Zde jsme změnili Sub1 na Soukromý subdodavatel přidáním termínu Soukromé v prvním řádku. A zavolal ji z Sub2 který je ve stejném modulu.
Pokud nyní spustíte Sub2 , získáte Pole pro zprávy zobrazení 10 .
⧭ Volání z funkce:
Totéž platí pro funkce. Soukromý subdodavatel od a Funkce na adrese VBA ... Sub a Funkce musí být ve stejném modulu.
Zde jsme vložili Soukromý subdodavatel Sub1 a Funkce Funkce1 ve stejném modulu.
Pokud nyní vložíme Funkce1 v libovolné buňce našeho pracovního listu, a Pole pro zprávy zobrazí 10 .
Souhrn
Zde je shrnutí všech dnes projednávaných bodů:
- Můžete zavolat Sub od jiného Sub nebo Funkce definovaná uživatelem na adrese VBA používáním termínu "Call" s názvem Sub nebo jednoduše zadat název Sub .
- Pokud Sub který má být volán, obsahuje argument , musíte zavolat Sub s jakoukoli hodnotou tohoto argument .
- Pokud Sub který má být volán, je deklarován jako Soukromé jeden, musíte jej vyvolat z jiného Sub nebo Funkce stejného modulu.
Závěr
Pomocí těchto metod můžete zavolat Sub od jiného Sub nebo Funkce na adrese VBA Máte nějaké dotazy? Neváhejte se nás zeptat.