サブルーチン

サブルーチン

AccessVBAでは、実行中のプロシージャから、ほかのプロシージャを呼び出して実行することができます。複数のプロシージャをまとめて記述することにより、コードを理解しやすく、簡単にデバッグできるようにすることが可能です。

サブルーチンとしてほかのプロシージャを呼び出すには Callステートメントを使います。(Callステートメントは省略することもできます)

Exit Subステートメント、Exit Functionステートメント、Exitステートメントは、そのプロシージャのExitステートメント以降の処理をしないで、制御を呼び出し元に戻します。

 

サブルーチンの有効範囲 

サブルーチンの有効範囲は、PublicキーワードとPrivateキーワードで指定することができます。
Publicキーワードを使用すると、すべてのモジュールから参照できるプロシージャを宣言することができます。(Publicキーワードは省略可能)
Privateキーワードを使用すると、同一モジュールからしか呼び出すことはできません。

 

サブルーチンの引数と戻り値 

サブルーチンは、引数を渡すことができます。複数のプロシージャから呼び出されるサブルーチンを作成した場合、必要な値を渡して処理をすることができます。
引数を使用したサブルーチンの記述は、サブルーチン名の後ろのカッコの中に引数名を書きます。Callステートメントを使う場合は、引数をカッコで囲む必要があります。

《サンプル》

 

引数のデータ型 

変数と同じように、引数にデータ型を指定することができます。引数に使用できるデータ型は、基本データ型以外に、オブジェクト型やユーザー定義型、配列などが指定できます。

《サンプル》

 

戻り値のあるサブルーチン 

Functionプロシージャを使うと、処理の結果として値を呼び出し元に返すことができます。戻り値は、プロシージャ名に値を代入すると、呼び出し元で取得することができます。

《サンプル》