Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Procedura Sub
to seria instrukcji Języka Visual Basic ujęta w instrukcje Sub
i End Sub
. Procedura Sub
wykonuje zadanie, a następnie zwraca kontrolę do kodu wywołującego, ale nie zwraca wartości do kodu wywołującego.
Za każdym razem, gdy procedura jest wywoływana, jego instrukcje są wykonywane, począwszy od pierwszej instrukcji wykonywalnej po Sub
instrukcji i kończącej się pierwszą End Sub
instrukcją , Exit Sub
lub Return
napotkaną instrukcją.
Procedurę Sub
można zdefiniować w modułach, klasach i strukturach. Domyślnie jest to Public
, co oznacza, że można go wywołać z dowolnego miejsca w aplikacji, która ma dostęp do modułu, klasy lub struktury, w której go zdefiniowano. Termin metoda opisuje proceduręSub
lub Function
dostępną spoza definiującego modułu, klasy lub struktury. Aby uzyskać więcej informacji, zobacz Procedures.
Procedura Sub
może przyjmować argumenty, takie jak stałe, zmienne lub wyrażenia, które są przekazywane do niego przez kod wywołujący.
Składnia deklaracji
Składnia deklarowania Sub
procedury jest następująca:
[modifiers] Sub SubName[(parameterList)]
' Statements of the Sub procedure.
End Sub
Element modifiers
może określać poziom dostępu oraz informacje na temat przeciążenia, nadpisywania, udostępniania i zacienienia. Aby uzyskać więcej informacji, zobacz Sub Statement .
Deklaracja parametru
Każdy parametr procedury jest deklarowany podobnie do sposobu deklarowania zmiennej, określając nazwę parametru i typ danych. Można również określić mechanizm przekazywania oraz określić, czy parametr jest opcjonalny, czy tablica parametrów.
Składnia dla każdego parametru na liście parametrów jest następująca:
[Optional] [ByVal | ByRef] [ParamArray] parameterName As DataType
Jeśli parametr jest opcjonalny, należy również podać wartość domyślną w ramach jego deklaracji. Składnia określania wartości domyślnej jest następująca:
Optional [ByVal | ByRef] parameterName As DataType = defaultValue
Parametry jako zmienne lokalne
Gdy kontrolka przechodzi do procedury, każdy parametr jest traktowany jako zmienna lokalna. Oznacza to, że jego okres istnienia jest taki sam jak w przypadku procedury, a jej zakres to cała procedura.
Wywoływanie składni
Należy jawnie wywołać procedurę Sub
za pomocą samodzielnej instrukcji wywołującej. Nie można go wywołać przy użyciu jego nazwy w wyrażeniu. Musisz podać wartości dla wszystkich argumentów, które nie są opcjonalne, i należy ująć listę argumentów w nawiasach. Jeśli nie podano żadnych argumentów, opcjonalnie można pominąć nawiasy. Użycie słowa kluczowego Call
jest opcjonalne, ale nie jest zalecane.
Składnia wywołania Sub
procedury jest następująca:
[Call] SubName[(argumentlist)]
Można wywołać metodę Sub
spoza klasy, która ją definiuje. Najpierw musisz użyć New
słowa kluczowego, aby utworzyć wystąpienie klasy lub wywołać metodę zwracającą wystąpienie klasy. Aby uzyskać więcej informacji, zobacz Nowy operator. Następnie możesz użyć następującej składni, aby wywołać metodę Sub
w obiekcie wystąpienia:
object.MethodName[(argumentList)]
Ilustracja deklaracji i wywołania
Poniższa Sub
procedura informuje operatora komputera, które zadanie ma wykonać aplikacja, a także wyświetla sygnaturę czasową. Zamiast duplikować ten kod na początku każdego zadania, aplikacja po prostu wywołuje tellOperator
z różnych lokalizacji. Każde wywołanie przekazuje ciąg w argumencie task
, który identyfikuje uruchomione zadanie.
Sub tellOperator(ByVal task As String)
Dim stamp As Date
stamp = TimeOfDay()
MsgBox("Starting " & task & " at " & CStr(stamp))
End Sub
W poniższym przykładzie pokazano typowe wywołanie metody tellOperator
.
tellOperator("file update")