VBScript process
In VBScript, processes are divided into two categories: Sub processes and Function processes.
Sub procedure
A sub procedure is a set of VBScript statements that are contained between a sub and an end sub statement, performing an action but not returning a value. Sub procedures can use parameters (constants, variables, or expressions passed by the calling procedure). If the sub procedure has no arguments, the sub statement must contain an empty bracket ().
The Sub procedure below uses two intrinsic (or built-in) VBScript functions, namely MsgBox and InputBox, to prompt the user for information. It then displays the results calculated based on this information. The calculation is completed by a Function procedure created using VBScript. This process is demonstrated after the following discussion.
Sub ConvertTemp() temp = InputBox("
Please enter the Fahrenheit temperature. ", 1)
MsgBox "
The temperature is
Celsius."
End Sub
Function procedure
A function procedure is a set of VBScript statements that are contained between a function and an end function statement. A function procedure is similar to a Sub procedure, but a function procedure can return a value. A Function procedure can use parameters (constants, variables, or expressions passed by the calling procedure). If the function procedure has no arguments, the function statement must contain an empty bracket (). A Function procedure returns a value that is assigned to a function name in the statement of a procedure by its name. The data type of a Function return value is always a Variant.
In the following example, the Celsius function converts Fahrenheit to degree Celsius. Sub Procedure ConvertTemp When this function is called, the variable containing the parameter value is passed to the function. The conversion result is returned to the calling procedure and displayed in a message box.
Sub ConvertTemp() temp = InputBox("
Please enter the Fahrenheit temperature. ", 1)
MsgBox "
The temperature is
Celsius."
End Sub
Function Celsius(fDegrees)
Celsius = (fDegrees - 32) * 5 / 9
End Function
Process data entry and exit
The way to pass data to a process is to use parameters. The parameter is used as a placeholder for the data to be passed to the procedure. The parameter name can be any valid variable name. When you create a procedure by using a Sub statement or Function statement, the procedure name must be followed by parentheses. The parentheses contain all the parameters, separated by commas. For example, in the following example, Fdegrees is a placeholder for the value passed to the Celsius function:
Function Celsius(fDegrees) Celsius = (fDegrees - 32) * 5 / 9 End Function
To get data from a procedure, you must use a Function procedure. Keep in mind that aFunction procedure can return a value, and aSub procedure does not return a value.
Using Sub and Function procedures in your code
When calling a Function procedure, the function name must be used at the right end of the variable assignment statement or in an expression. For example:
Temp = Celsius(fDegrees)
Or
MsgBox "
The temperature is
Celsius."
When you call a Sub procedure, you simply enter a procedure name and all parameter values, separated by commas. You do not need to use the call statement, but if you use this statement, you must enclose all parameters in parentheses.
The following example shows two ways to invoke the MyProc procedure. One uses the call statement, and the other is not used. The results are the same in both ways.
Call MyProc(firstarg, secondarg) MyProc firstarg, secondarg
Note that parentheses are omitted when a call statement is not used.
-->