# RangeXNPV - 指令碼與圖表函數

RangeXNPV() 會針對運算式的配對數字 (以 pmt 和 date 表示) 所代表的現金流量排程 (不一定是定期) 傳回淨現值。所有支出均按照 1 年 365 天攤算。

語法：

RangeXNPV(discount\_rate, value, date{, value, date})

傳回的資料類型： 數值

引數

| 引數 | 描述 |
| --- | --- |
| discount\_rate | discount\_rate 是付款應據此折扣的年折扣率。 |
| value | 對應於多個日期支出排程的一筆現金流量或一系列現金流量。每個值可能是第三個選用參數的記錄間函數所傳回之單一值或一個範圍的值。一組值中必須包含至少一個正值和一個負值。 |
| date | 對應於現金流量付款的支付日期或支付日期排程。 |

使用此函數時，適用下列限制：

* 文字值、NULL 值和遺漏值將予以忽略。

* 所有支出均按照 1 年 365 天攤算。

## 範例 - 指令碼

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/RangeFunctions/RangeXNPV.htm)

#### 載入指令碼和結果

概覽

開啟資料載入編輯器並將下面的載入指令碼新增至新的區段。

載入指令碼包含：

* 稱為 `RangeTab3` 的表格中包含的財務資料。

* 使用 RangeXNPV() 函數運算淨現值。

載入指令碼

```
RangeTab3:
LOAD *,
recno() as RangeID,
RangeXNPV(DiscountRate,Value1,Date1,Value2,Date2) as RangeXNPV;
LOAD * INLINE [
DiscountRate|Value1|Date1|Value2|Date2
0.1|-100|2021-01-01|100|2022-01-01|
0.1|-100|2021-01-01|110|2022-01-01|
0.1|-100|2021-01-01|125|2022-01-01|
] (delimiter is '|');
```

結果

載入資料並開啟工作表。建立新的表格並將這些欄位新增為維度：

* `RangeID`

* `RangeXNPV`

結果表格

| RangeID | RangeXNPV |
| --- | --- |
| 1 | -$9.09 |
| 2 | -$0.00 |
| 3 | $13.64 |

## 範例 - 圖表運算式

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/RangeFunctions/RangeXNPV.htm)

#### 載入指令碼和圖表運算式

概覽

開啟資料載入編輯器並將下面的載入指令碼新增至新的區段。

載入指令碼包含：

* 稱為 `RangeTab3` 的表格中包含的財務資料。

* 使用 RangeXNPV() 函數運算淨現值。

載入指令碼

```
RangeTab3:
LOAD *,
recno() as RangeID,
RangeXNPV(DiscountRate,Value1,Date1,Value2,Date2) as RangeXNPV;
LOAD * INLINE [
DiscountRate|Value1|Date1|Value2|Date2
0.1|-100|2021-01-01|100|2022-01-01|
0.1|-100|2021-01-01|110|2022-01-01|
0.1|-100|2021-01-01|125|2022-01-01|
] (delimiter is '|');
```

結果

請執行下列動作：

載入資料並開啟工作表。建立新的表格並新增下列計算作為量值。

`=RangeXNPV(0.1, -2500,'2008-01-01',2750,'2008-09-01')`

結果表格

| =XIRR(Payments, Date) |
| --- |
| $80.25 |

## 瞭解更多資訊

* [XNPV - 指令碼函數](https://help.qlik.com/zh-TW/sense/May2025/Subsystems/Hub/Content/Sense_Hub/Scripting/FinancialAggregationFunctions/XNPV.htm)