Functionステートメント 解説(Excel VBA)

Function ステートメントの解説

概要

Function ステートメントは、VBAにおいてユーザー定義関数を作成するための構文です。この関数は、特定の処理を実行して値を返すもので、サブルーチン(Sub)とは異なり、返り値を持つ点が特徴です。

意義

Function ステートメントを使用することで、繰り返し利用するような計算や処理を一箇所にまとめ、それを関数として定義することができます。これにより、コードの再利用性が向上し、プログラムの整理や管理が容易になります。

構文

Function 関数名( [引数1 As 型1, ...] ) As 返り値の型
    [ステートメント]
    [Exit Function]
    [ステートメント]
    Function = 値
End Function

パーツ

  • Function: ユーザー定義関数を開始するキーワード。
  • 関数名: 定義する関数の名前。
  • 引数: (オプション)関数に渡すパラメータ。
  • Exit Function: (オプション)関数を途中で終了させるキーワード。
  • End Function: ユーザー定義関数を終了するキーワード。

サンプルプロシージャ

Function AreaOfCircle(radius As Double) As Double
    Const PI As Double = 3.14159265358979
    AreaOfCircle = PI * radius * radius
End Function

Sub SampleUsage()
    Dim r As Double
    Dim area As Double

    r = 5
    area = AreaOfCircle(r)
    MsgBox "半径" & r & "の円の面積は、" & area & "です。"
End Sub

この例では、円の面積を計算するためのユーザー定義関数「AreaOfCircle」を作成し、それをSampleUsageサブルーチンで使用しています。

関連するステートメントや関数

  • Sub ステートメント: 返り値を持たない手続きを定義するためのステートメント。
  • Public/Private キーワード: 関数のスコープ(アクセス可能範囲)を制御するキーワード。

注意事項

  • Function ステートメントで定義した関数の中で、関数名自体を変数のように使用して、返す値を設定します。
  • Exit Function ステートメントを使用して、関数を途中で終了させることができます。
  • 引数のデータ型や関数の返り値のデータ型を明確に指定することで、エラーの発生を防ぐことができます。