VBAのMIRR関数について解説しています。
MIRR関数は、VBA関数の中で財務関数に分類される関数です。
MIRR関数は、倍精度浮動小数点数型 (Double) の値を返します。一連の定期的なキャッシュ フロー (支払いと収益) に基づいて、修正内部利益率を返します。
構文 | MIRR(values(), finance_rate, reinvest_rate) | |
---|---|---|
引数 | 省略 | 説明 |
values() | × | キャッシュ フローの値を倍精度浮動小数点数型 (Double) の配列として指定します。配列には、負の値 (支払額) と正の値 (収益額) が少なくとも 1 つずつ含まれている必要があります。 |
finance_rate | ● | 支払額に対する利率を示す倍精度浮動小数点数型 (Double) の値を指定します。 |
reinvest_rate | ● | 収益額に対する利率を示す倍精度浮動小数点数型 (Double) の値を指定します。 |
修正内部利益率は、支払いと収益を異なる利率で管理する場合の内部利益率を表します。MIRR 関数は、投資原価 (finance_rate) と現金の再投資に対する受取り利率 (reinvest_rate) の両方を基に修正内部利益率を求めます。
名前付き引数 finance_rate および reinvest_rate は、小数点を用いた百分率で指定します。たとえば、12% は 0.12 と記述します。
MIRR 関数では、配列で指定した値の順序がキャッシュ フローの順序であるとみなされます。支払額と収益額を入力するときは、その順序に注意してください。
次の例は、MIRR 関数を使って、配列 Values() に指定されたキャッシュ フローに対する修正内部利益率を計算します。LoanAPR は借入金に対する利率を表し、InvAPR は再投資に対する利率を表します。
Sub sample()
Dim LoanAPR, InvAPR, Fmt, RetRate, Msg
Static Values(5) As Double ' 配列を定義します。
LoanAPR = .1 ' 借入金に対する利率を指定します。
InvAPR = .12 ' 再投資に対する利率を指定します。
Fmt = "#0.00" ' 金額の形式を定義します。
Values(0) = -70000 ' 操業資金を指定します。
' 以後 4 年間の収益を表す正のキャッシュ フローです。
Values(1) = 22000 : Values(2) = 25000
Values(3) = 28000 : Values(4) = 31000
RetRate = MIRR(Values(), LoanAPR, InvAPR) ' 内部利益率を計算します。
Msg = "指定された 5 つのキャッシュ フローに対する修正内部利益率は "
Msg = Msg & Format(Abs(RetRate) * 100, Fmt) & " % です。"
MsgBox Msg ' 修正内部利益率を表示します。
End Sub
※ドラッグ(スワイプ)すると全体を確認できます。
関数名 | 内容 |
---|---|
DDB | 倍率法による指定した期間の資産原価償却額を算出します。 |
FV | 定額定利の定期支払いでの投資の将来価値を算出します。 |
IPmt | 定額定利の定期支払いで投資期間内の指定した期における金利を算出します。 |
IRR | 指定したキャッシュフローに対する内部利率を算出します。 |
MIRR | 指定したキャッシュフローに対する修正内部利率を算出します。 |
NPer | 定額定利の定期支払いで総額の支払いに必要な支払回数を算出します。 |
NPV | 投資の正味現在価値を算出します。 |
Pmt | 定額定利の定期支払いでの投資の将来価値を算出します。投資に必要な定期支払額を算出します。 |
PPmt | 定額定利の定期支払いでの特定の期間における元金を算出します。 |
PV | 定額定利の定期支払いでの投資の現在価値を算出します。 |
Rate | 定額定利の定期支払いで将来価値を得るための利率を算出します。 |
SLN | 定額法での減価償却費を算出します。 |
SYD | 定額逓減法で指定した期の減価償却費を算出します。 |
↑ExcelのVBA全般について分からない事があればこちらの掲示板よりご質問ください。
VBAのIE操作入門↑ExcelのVBAをマスターできたら、エクセルVBAのIE操作にも挑戦してみてください。
こちらでは、エクセルVBAの事例で利用したステートメントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。
こちらでは、エクセルVBAの事例で利用したオブジェクトをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。
こちらでは、エクセルVBAの事例で利用したオブジェクトのプロパティをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。
こちらでは、エクセルVBAの事例で利用したオブジェクトのメソッドをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。
こちらでは、エクセルVBAの事例で利用したオブジェクトのイベントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。