事件
Sub 程序 (Visual Basic)
Sub
程序是 Sub
和 End Sub
陳述式所括住的一連串 Visual Basic 陳述式。 Sub
程序會執行工作,然後將控制傳回呼叫程式碼,但其不會傳回值給呼叫程式碼。
每次呼叫程序時,其陳述式都會執行,從 Sub
陳述式之後的第一個可執行陳述式開始,並以出現的第一個 End Sub
、Exit Sub
或 Return
陳述式結尾。
您可以在模組、類別和結構中定義 Sub
程序。 預設為 Public
,這表示您可以從應用程式中任何可存取您所定義模組、類別或結構的任何位置呼叫它。 「方法」一詞描述從自身定義模組、類別或結構外受到存取的 Sub
或 Function
程序。 如需詳細資訊,請參閱程序。
Sub
程序可接受引數,例如常數、變數或運算式,這些引數會透過呼叫程式碼傳遞給程序。
宣告 Sub
程序的語法如下:
[modifiers] Sub SubName[(parameterList)]
' Statements of the Sub procedure.
End Sub
modifiers
可指定有關多載、覆寫、共用和遮蔽的存取層級和資訊。 如需詳細資訊,請參閱 Sub 陳述式。
您可以用類似宣告變數的方式宣告每個程序參數,即指定參數名稱和資料類型。 您也可以指定傳遞機制,以及參數是否為選擇性或是參數陣列。
參數清單中的每個參數語法如下:
[Optional] [ByVal | ByRef] [ParamArray] parameterName As DataType
如果參數為選擇性,您也必須在其宣告中提供預設值。 指定預設值的語法如下:
Optional [ByVal | ByRef] parameterName As DataType = defaultValue
當控制傳遞至程序時,每個參數都會被視為區域變數。 這表示其存留期與程式存留期相同,而且其範圍是整個程式。
您可以使用獨立呼叫陳述式明確叫用 Sub
程序。 您無法在運算式中使用其名稱來呼叫它。 您必須為所有非選擇性的引數提供值,而且須以括弧括住引數清單。 如果未提供任何引數,您可以選擇省略括弧。 您可選擇使用 Call
關鍵字,但不建議這麼做。
Sub
程序的呼叫語法如下:
[Call] SubName[(argumentlist)]
您可以從定義 Sub
方法的類別之外呼叫該方法。 首先,您必須使用 New
關鍵字建立類別的執行個體,或是呼叫會傳回類別之執行個體的方法。 如需詳細資訊,請參閱 New 運算子。 然後,您可以使用下列語法在執行個體物件上呼叫 Sub
方法:
object.MethodName[(argumentList)]
下列 Sub
程序會告訴電腦操作員應用程式要執行的工作,並且會顯示時間戳記。 應用程式並不會在每項工作開始時複製此程式碼,而是從各個位置呼叫 tellOperator
。 每個呼叫都會在 task
引數中傳遞字串,識別要啟動的工作。
Sub tellOperator(ByVal task As String)
Dim stamp As Date
stamp = TimeOfDay()
MsgBox("Starting " & task & " at " & CStr(stamp))
End Sub
下列範例會顯示對 tellOperator
的一般呼叫。
tellOperator("file update")
其他資源
訓練
模組
Create custom procedures in Dynamics 365 Business Central - Training
Do you want to create custom procedures in AL? This module focuses on explaining how you can create new procedures. Additionally, it describes the difference between local and global procedures, the difference between local and global variables, and how you can pass variables to a procedure.
文件
-
進一步了解:函式程序 (Visual Basic)
-
深入了解:Function 陳述式 (Visual Basic)
-
深入了解:Visual Basic 中的程序