VBA Call / Run Sub z jiného podprogramu

Tento tutoriál vás naučí, jak volat dílčí proceduru z jiné dílčí procedury ve VBA

Je velmi užitečné psát kód, který lze použít opakovaně a volat z více dílčích procedur ve vašem projektu - může to ušetřit obrovské množství času a kód VBA je mnohem efektivnější.

Spuštění dílčí procedury z jiné dílčí procedury

Zvažte níže uvedené 3 dílčí postupy:

1234 Dílčí testovací rutina ()RunRoutine 1RunRoutine2End Sub
123 Sub RunRoutine1 ()MsgBox „Dobré ráno“End Sub
123 Sub RunRoutine2 ()MsgBox „Dnešní datum je“ a formát (datum, „mm/dd/rrrr“)End Sub

Pokud spustíme dílčí proceduru - TestRoutine - zavolá RunRoutine1 a zobrazí se RunRoutine2 a 2 pole se zprávami.

Počet dílčích procedur, které můžete volat z jiné dílčí procedury, není omezen.

Použití prohlášení o hovoru

Můžete také použít příkaz Call před názvem procedury, aby byl váš kód čitelnější. Nemá to však žádný vliv na způsob spuštění nebo uložení kódu.

1234 Dílčí testovací rutina ()Zavolejte RunRoutine1Zavolejte RunRoutine2End Sub

Volání Sub s argumenty

Je také možné zavolat sub s argumenty

1234 Dílčí testovací rutina ()RunRoutine1 („Melanie“)RunRoutine2 („Přeji krásný den“)End Sub
123 Sub RunRoutine1 (strName jako řetězec)MsgBox „Dobré ráno“ & „& strNameEnd Sub
123 Sub RunRoutine2 (strMessage jako řetězec)MsgBox „Dnešní datum je“ & Formát (datum, „mm/dd/rrrr“) & VbCrLf & strMessageEnd Sub

Volání Sub s pojmenovanými argumenty

Pokud pojmenujete své argumenty, nemusíte je předávat ve stejném pořadí svým dílčím rutinám.

123 Dílčí testovací rutina ()RunRoutine1 strGreeting: = "Jak se máš?", StrName: = "Melanie"End Sub
123 Sub RunRoutine1 (strName jako řetězec, strGreeting jako řetězecMsgBox „Good Morning“ & „& strName & vbCrLf & strGreetingEnd Sub

wave wave wave wave wave