一連の定期的なキャッシュ フロー (支出と収入) の内部利益率を指定する Double を返します。
構文
IRR( values () [, guess ] )
IRR 関数の構文には、次の引数があります。
引数 |
説明 |
values () |
必須です。 キャッシュ フローの金額を指定する Double 型の配列。 配列には、少なくとも 1 つの負の値 (支払い) と、1 つの正の値 (受け取り) を含める必要があります。 |
guess |
省略可能。 IRR によって返されるものと想定する値を表す Variant 型。 省略すると、guess は 0.1 (10%) です。 |
解説
内部利益率は、定期的に発生する支出と収入から構成される投資に対して受け取る金利です。
IRR 関数は、配列内の値の順序を使用して、支出と収入の順序を解釈します。 支出値と収入値は、正しい順序で入力してください。 これは年金なので、各期間のキャッシュ フローを固定する必要はありません。
IRR は反復計算されます。 guess の値から始めて、IRR は結果が 0.00001% 以下の精度になるまで計算を繰り返します。 IRR は、20 回試みて結果が見つからないと失敗になります。
例
注: 次の例は、Visual Basic for Applications (VBA) モジュールでのこの関数の使用方法を示しています。 VBA の使用方法の詳細については、[検索] の横にあるドロップダウン リストで [開発者用リファレンス] を選び、検索ボックスに検索する用語を入力します。
この例で、IRR 関数は、配列 Values() に含まれる 5 つのキャッシュ フローの内部利益率を返します。 最初の配列要素は、ビジネスのスタートアップ コストを表す負のキャッシュ フローです。 残りの 4 つのキャッシュ フローは、今後 4 年間の正のキャッシュ フローを表します。 Guess は、推測される内部利益率です。
Dim Guess, Fmt, RetRate, Msg
Static Values(5) As Double ' Set up array. Guess = .1 ' Guess starts at 10 percent. Fmt = "#0.00" ' Define percentage format. Values(0) = -70000 ' Business start-up costs. ' Positive cash flows reflecting income for ' four successive years. Values(1) = 22000 : Values(2) = 25000 Values(3) = 28000 : Values(4) = 31000 ' Calculate internal rate. RetRate = IRR(Values(), Guess) * 100 Msg = "The internal rate of return for these " & _ "five cash flows is " Msg = Msg & Format(RetRate, Fmt) & " percent." MsgBox Msg ' Display internal return rate.