Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Należy ująć procedurę między instrukcją deklaracji początkowej (Sub lub Function) a końcową instrukcją deklaracji (End Sub lub End Function). Cały kod procedury znajduje się między tymi instrukcjami.
Procedura nie może zawierać innej procedury, więc jej instrukcje początkowe i końcowe muszą znajdować się poza inną procedurą.
Jeśli masz kod wykonujący to samo zadanie w różnych miejscach, możesz napisać zadanie raz jako procedurę, a następnie wywołać je z różnych miejsc w kodzie.
Aby utworzyć procedurę, która nie zwraca wartości
Poza jakąkolwiek inną procedurą użyj instrukcji
Sub, a następnie instrukcjiEnd Sub.W instrukcji
Subumieść po słowie kluczowymSubnazwę procedury, a następnie w nawiasach podaj listę parametrów.Umieść instrukcje kodu procedury między instrukcjami
SubiEnd Sub.
Aby utworzyć procedurę zwracającą wartość
Poza jakąkolwiek inną procedurą użyj instrukcji
Function, a następnie instrukcjiEnd Function.W instrukcji
Functionnajpierw użyj słowa kluczowegoFunctionwraz z nazwą procedury, następnie umieść listę parametrów w nawiasach, a na końcu klauzulęAs, która określa typ danych wartości zwracanej.Umieść instrukcje kodu procedury między instrukcjami
FunctioniEnd Function.Użyj instrukcji
Return, aby zwrócić wartość do kodu wywołującego.
Aby połączyć nową procedurę ze starymi, powtarzalnymi blokami kodu
Upewnij się, że zdefiniowano nową procedurę w miejscu, w którym stary kod ma dostęp do tej procedury.
W starym, powtarzalnym bloku kodu zastąp instrukcje wykonujące powtarzające się zadanie pojedynczą instrukcją, która wywołuje procedurę
SuborFunction.Jeśli twoja procedura to
Function, która zwraca wartość, upewnij się, że instrukcja wywołująca wykonuje jakąś akcję z tą wartością, na przykład przechowuje ją w zmiennej, w przeciwnym razie wartość zostanie utracona.
Przykład
Poniższa Function procedura oblicza najdłuższą stronę lub hipotenuse trójkąta prawego, biorąc pod uwagę wartości pozostałych dwóch stron:
Function Hypotenuse(side1 As Double, side2 As Double) As Double
Return Math.Sqrt((side1 ^ 2) + (side2 ^ 2))
End Function