サーチ…


前書き

Functionは、 "Function"文と "End Function"文で囲まれた一連の文です。

関数はアクティビティを実行し、呼び出し元に制御を返します。制御を戻すと、呼び出し元コードにも値が返されます。

クラス、構造、モジュールで関数を定義することができます。デフォルトではPublicです。つまり、定義したクラス、構造またはモジュールにアクセスできるアプリケーション内のどこからでも呼び出すことができます。

構文

  • [修飾子]関数Name_Of_The_Function [(Arg_List)] Return_Typeとして
  • [声明]
  • 終了機能

備考

  • この例で使用されている2つの関数修飾子は、Public&Privateです。この修飾子は、関数のスコープを定義します。
  • プライベートスコープの関数は、定義されたソースファイルからのみ呼び出すことができます。私たちの場合、モジュールで呼び出すことができます。そして、モジュールの外で呼び出すことはできません。
  • Publicスコープの関数は、モジュールの外部と内部の両方で呼び出すことができます。単に「プログラムのどこにでも呼び出せる」と言うことができます。
  • 関数のデフォルト修飾子はpublicです。
  • デフォルトでは、関数の引数は参照によって渡されます(別のトピックでこれについて詳しく説明します)。

関数の作成と呼び出し

モジュールファイルを追加した標準EXEプロジェクトを使用したこの例。

  • 新しい "標準EXE"プロジェクトを作成します。ここでは、デフォルトでフォームがプロジェクトに追加されます。
  • モジュールファイルをプロジェクトに追加する
  • フォームにコマンドボタンを配置します。
  • コマンドボタンを作成イベントをクリックします。

モジュールコード

モジュールに2つの関数を作成しました。 1つはパブリック関数(FnAdd)です。 2つの整数引数val_1とval_2が必要です。 Integerを返します。この関数は2つの引数を追加し、呼び出し元に値を返します。加算の前に、2つの引数は別の関数で処理されます。私的な機能です。備考欄に記載されている公共及び私的機能の特性/規則。

Public Function FnAdd(val_1 As Integer, val_2 As Integer) As Integer

'Calling private function
val_1 = FnMultiplyBy5(val_1)

'Calling private function
val_2 = FnMultiplyBy5(val_2)

'Function return statement
FnAdd = val_1 + val_2

End Function

以下は、モジュールのプライベート機能です。 1つの整数引数valをとります。整数を返します。この関数は、値5に引数を掛け、結果を呼び出し側に返します。

Private Function FnMultiplyBy5(Val As Integer) As Integer

'Function return statement
FnMultiplyBy5 = Val * 5

End Function

フォームコード

コマンドボタンでイベントをクリックします。ここでは、モジュール公開関数 "FnAdd"

Private Sub Command1_Click()
Debug.Print FnAdd(3, 7)
End Sub

イミディエイトウィンドウの結果

50


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow