【ACCESS VBA】Functionステートメントの書式、プロシージャ名の命名規則

訪問して頂きありがとうございます。まさふくろーです。

この記事では、Functionステートメントの書式、プロシージャ名の命名規則をご紹介します。

Functionステートメントの書式

修飾子 Function プロシージャ名 [( 引数 )] As 戻り値の型

            処理する内容を記述
            プロシージャ名 = 処理結果

End Function

1 戻り値が倍精度浮動小数点数型であるFunctionプロシージャ「FncSample」を作成。引数:金額、割引率。
3 割引後の金額格納用変数「DiscountAmount」(倍精度浮動小数点数型)を宣言。
5 割引後の金額を求めて、変数「DiscountAmount」に格納。
7 変数「DiscountAmount」をFunctionプロシージャ「FncSample」に設定し、計算結果を戻す。

「修飾子」に指定する項目

項目 説明
Public すべてのモジュールからプロシージャを呼び出すことができる。
Private 同じモジュール内からのみ、プロシージャを呼び出すことができる。
Friend クラスモジュールで使用する。同一プロジェクト内でのみプロシージャを呼び出すことができる。

「引数」に指定する項目

[Optional][ByVal | ByRef][ParamArray] name [As Type][= DefValue]

項目 必須 説明
Optional 引数がオプションであることを示すキーワード。
Optionalキーワードを指定した場合、指定した引数以降のすべての引数もオプション指定する必要があります。
ByVal 引数が値によって渡されることを示す。
ByRef 引数が参照によって渡されることを示す。既定値。
ParamArray

ParamArrayキーワードを使用すると、任意の数の引数を指定できます。
ParamArrayキーワードを使用した場合、ByVal、ByRefまたはOptionalキーワードとともに使用することはできません。
name 変数の名前。
Type

引数のデータ型を指定。
ユーザー定義型も指定することもできます。(Optionalキーワードを指定した場合は除く。)
Typeは省略可能ですが、コードの可読性をあげるために指定することをおすすめします。
DefValue

任意の定数または定数式を指定。
Optionalキーワードを指定した場合のみ、有効です。
型がObjectの場合、明示される既定値はNothingのみとなります。

「戻り値」に指定する内容

説明
戻り値を設定するには、プロシージャ名(FncSample) = 処理した結果の値(変数「DiscountAmount」)と指定します

「戻り値の型」に指定する内容

説明
戻り値のデータ型を指定。
指定するデータ型は、処理した結果の値(変数「DiscountAmount」)と同じデータ型にします。

Functionプロシージャの呼び出しかた

戻り値格納用変数 = Functionプロシージャ名

1 Subプロシージャ「Sample」を作成。
3 Functionプロシージャの戻り値を格納する変数「ret」を宣言。
5 Functionプロシージャ「FncSample」を呼び出し、戻り値を変数「ret」に格納。
7 戻り値をメッセージボックスで表示する。

プロシージャ名の命名規則

  • 文字数は半角で255文字以内
  • 先頭に数字やアンダースコア(_)は使用できない
  • アンダースコア(_)以外の記号やスペースは使用できない
  • 英字の大文字、小文字は区別されない
  • 全角英数字は、自動的に半角に変換される
  • 関数名など、VBAであらかじめ定義されているキーワードは使用できない

最後まで読んでいただき、ありがとうございました!