WorksheetFunction.Xirr 方法 (Excel)

傳回現金流量表的內部報酬率,該現金流量不須是定期性的。 若要計算一系列定期現金流量的內部報酬率,請使用 Irr 函式。

語法

運算式Xirr (Arg1Arg2Arg3)

表達 代表 WorksheetFunction 物件的 變數。

參數

名稱 必要/選用 資料類型 描述
Arg1 必要 Variant Values - 一系列與付款日期對應的現金流動。 第一次付款是有選擇性的,而且與投資開始時的成本和付款對應。 如果第一個值是成本或付款,則它必須是負值。 而之後的付款都會以一年 365 天為基礎來折算。 序列值必須至少包括一次正值和一次負值。
Arg2 必要 Variant Dates - 與現金流動付款對應的付款時程。 第一個付款日期指出付款時程的開始日期。 所有其他日期都必須晚於這個日期,但它們可能會以任何順序出現。 必須使用 DATE 函數或是其他公式或函數的計算結果輸入日期。 例如,使用 DATE(2008,5,23) 表示 2008 年 5 月 23 日。 若使用文字格式輸入日期,可能會發生問題。
Arg3 選用 Variant Guess - 您猜到的數位接近 Xirr的結果。

傳回值

雙精確度

註解

Microsoft Excel 會以連續的序列值來儲存日期,以便用來計算。 根據預設,1900 年 1 月 1 日是序列值 1,而 2008 年 1 月 1 日則是序列值 39448,因為這是 1900 年 1 月 1 日之後的第 39,448 天。 Microsoft Excel for the Macintosh 則使用不同的預設日期系統。

注意事項

Visual Basic for Applications (VBA) 會以不同于 Excel 的方式計算序列日期。 在 VBA 中,序號 1 是 1899 年 12 月 31 日,而不是 1900 年 1 月 1 日。

會將 dates 中的數字無條件捨去成整數。

Xirr 預期至少有一個正現金流量和一個負現金流量;否則, Xirr 會傳回#NUM! 錯誤值。

如果日期中的任何數位不是有效的日期, Xirr 會傳回#VALUE! 錯誤值。

如果日期中的任何數位在開始日期之前, Xirr 會傳回#NUM! 錯誤值。

如果值和日期包含不同數目的值, Xirr 會傳回#NUM! 錯誤值。

在大部分情況下,您不需要為 Xirr 計算提供猜測。 如果省略 guess,則假設其值為 0.1 (百分之十)。

XirrXnpv密切相關,也就是 net present value 函式。 Xirr所計算的報酬率是 XNPV = 0 的對應利率。

Excel 會使用反復的技術來計算Xirr。 使用從猜測) 開始的變更速率 (, Xirr 會迴圈計算,直到結果在 0.000001% 內正確為止。 如果 Xirr 在嘗試 100 次之後找不到可運作的結果,#NUM! 錯誤值。

此速率會變更,直到:

公式

其中:

  • di = 第 i 個或最後一個付款日期。
  • d1 = 第 0 個付款日期。
  • Pi = 第一筆或最後一次付款。

支援和意見反應

有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應