以下に、シンプルで簡単な方法とコード例を示します。
まず、VBAエディタを開き、新しいモジュールを作成します。次に、次のコードを入力します。
Function Factorial(n As Integer) As Long
If n <= 1 Then
Factorial = 1
Else
Factorial = n * Factorial(n - 1)
End If
End Function
このコードでは、再帰的な関数Factorial
を定義しています。関数は整数n
をパラメータとして受け取り、階乗の結果をFactorial
という名前の変数に代入します。関数内の条件文If
とElse
は、再帰の終了条件をチェックしています。n
が1以下の場合、階乗は1となります。それ以外の場合は、n
を自身の関数呼び出しに渡して再帰的に計算します。
この関数を使用するには、Excelシート上で任意のセルに=Factorial(5)
のように入力します。これにより、5の階乗の結果が表示されます。
この方法を使えば、Excel VBAで再帰的な階乗関数を実装することができます。同様の方法を他の再帰的な関数にも適用することができます。
以上が、Excel VBAで再帰的な階乗関数を実装する方法となります。このコード例を使用することで、VBAで再帰を利用した他の関数も作成できます。