Sdílet prostřednictvím


Dílčí procedury (Visual Basic)

Procedura Sub je řada příkazů jazyka Visual Basic uzavřených příkazy Sub a End Sub příkazy. Tento Sub postup provede úlohu a pak vrátí ovládací prvek volajícímu kódu, ale nevrací hodnotu volajícímu kódu.

Pokaždé, když je volána procedura, její příkazy se spustí, počínaje prvním spustitelným příkazem za Sub příkazem a končí prvním End Sub, Exit Sub nebo Return příkazem, který byl zjištěn.

Postup můžete definovat Sub v modulech, třídách a strukturách. Ve výchozím nastavení to znamená Public, že ho můžete volat odkudkoli ve vaší aplikaci, která má přístup k modulu, třídě nebo struktuře, ve které jste ho definovali. Metoda popisuje proceduru nebo Sub postup, k níž se přistupuje zvenčí jejího definujícího modulu, třídy nebo struktury. Další informace naleznete v tématu Procedury.

Procedura Sub může přijímat argumenty, jako jsou konstanty, proměnné nebo výrazy, které jsou předány volajícím kódem.

Syntaxe deklarace

Syntaxe pro deklarování Sub procedury je následující:

[modifiers] Sub SubName[(parameterList)]
    ' Statements of the Sub procedure.
End Sub

Objekt modifiers může určit úroveň přístupu a informace o přetížení, přepsání, sdílení a stínování. Další informace naleznete v části Pododdíl.

Deklarace parametru

Každý parametr procedury deklarujete podobně jako proměnnou a zadáte název parametru a datový typ. Můžete také zadat předávací mechanismus a to, jestli je parametr volitelný, nebo pole parametrů.

Syntaxe každého parametru v seznamu parametrů je následující:

[Optional] [ByVal | ByRef] [ParamArray] parameterName As DataType

Pokud je parametr nepovinný, musíte jako součást deklarace zadat také výchozí hodnotu. Syntaxe pro zadání výchozí hodnoty je následující:

Optional [ByVal | ByRef]  parameterName As DataType = defaultValue

Parametry jako místní proměnné

Když přechází řízení na proceduru, každý parametr se zachází jako s místní proměnnou. To znamená, že jeho životnost je stejná jako životnost procedury a jeho rozsah pokrývá celý postup.

Syntaxe volání

Proceduru Sub vyvoláte explicitně pomocí samostatného volajícího příkazu. Nelze ho volat pomocí jeho názvu ve výrazu. Je nutné zadat hodnoty pro všechny argumenty, které nejsou volitelné, a je nutné uzavřít seznam argumentů do závorek. Pokud nejsou zadány žádné argumenty, můžete volitelně vynechat závorky. Použití klíčového Call slova je volitelné, ale nedoporučuje se.

Syntaxe volání Sub procedury je následující:

[Call] SubName[(argumentlist)]

Metodu Sub můžete volat mimo třídu, která ji definuje. Nejprve musíte použít New klíčové slovo k vytvoření instance třídy nebo volání metody, která vrací instanci třídy. Další informace naleznete v tématu Nový operátor. Pak můžete pomocí následující syntaxe volat metodu Sub objektu instance:

object.MethodName[(argumentList)]

Obrázek deklarace a volání

Následující Sub postup říká operátoru počítače, který úkol aplikace má provést, a také zobrazí časové razítko. Místo duplikování tohoto kódu na začátku každého úkolu aplikace volá pouze tellOperator z různých umístění. Každé volání předá řetězec v argumentu task , který identifikuje spuštěný úkol.

Sub tellOperator(ByVal task As String)
    Dim stamp As Date
    stamp = TimeOfDay()
    MsgBox("Starting " & task & " at " & CStr(stamp))
End Sub

Následující příklad ukazuje typické volání tellOperator.

tellOperator("file update")

Viz také