プロシージャとはよく使用するコードを1つにまとめて、別のプログラムから呼び出すことができるプログラム内部での処理単位です。プロシージャはSubプロシージャとFunctionプロシージャに分かれますが、その違いはFunctionプロシージャは関数と同じで値を返すことができます。
Sub プロシージャ名(引数 As データ型,・・・)
処理
End Sub
Function プロシージャ名(引数 As データ型,・・・)As データ型
処理
End Sub
以下の例ではSubプロシージャにiの値を引数として渡してべき乗した値を表示します。
Sub Sample()
Dim i
i = 10
Call Sample1(i)
End Sub
Sub Sample1(i As Integer)
Dim j As Integer
j = i ^ i
Msgbox j
End Sub
以下の例ではFunctionプロシージャにiの値を引数として渡してべき乗した値を返して表示します。
Sub Sample()
Dim i
i = 10
i = Sample1(i)
Msgbox i
End Sub
Fucntion Sample1(i As Integer)As Integer
Dim j As Integer
j = i ^ i
Sample1 = j
End Sub