# RangeXNPV - função de script

RangeXNPV() retorna o valor atual líquido de uma programação de fluxos de caixa que não são necessariamente periódicos. O resultado apresenta um formato numérico padrão de money. Para calcular o valor presente líquido de uma série de fluxos de caixa periódicos, use a função RangeNPV.

Sintaxe:

RangeXNPV(discount\_rate, values, dates[, Expression])

Tipo de dados de retorno: numérico

Argumentos:

* dates: Uma data de pagamento ou uma programação de datas de pagamento correspondente aos pagamentos do fluxo de caixa.
* discount\_rate: A taxa de juros por período.
* values: Um fluxo de caixa ou uma série de fluxos de caixa correspondente a uma programação de pagamentos nas datas. Cada valor é um valor único ou um intervalo de valores retornado por uma função inter-registro com um terceiro parâmetro opcional. A série de valores deve conter, pelo menos, um valor positivo e um valor negativo.

Limitações:

Os valores de texto, os valores NULL e os valores ausentes são ignorados.

Todos os pagamentos têm descontos baseados em um ano de 365 dias.

Exemplo 1:

`RangeXNPV(0.1, -2500,'2008-01-01',2750,'2008-09-01')` retorna 80,25.

Exemplo 2:

Adicione o script de exemplo ao seu documento e execute-o. Em seguida, adicione pelo menos os campos listados na coluna de resultados a um documento para ver o resultado.

`RangeTab3:` `LOAD *,` ` recno() as RangeID,  ` `RangeXNPV(Field1,Field2,Field3) as RangeNPV;` `LOAD * INLINE [` `Field1|Field2|Field3` `10|5|-6000` `2|NULL|7000` `8|'abc'|8000` `18|11|9000` `5|5|9000` `9|4|2000`

`] (delimiter is '|');`

A tabela resultante mostra os valores retornados de RangeXNPV para cada registro na tabela:

Resultados do exemplo

| RangeID | RangeXNPV |
| --- | --- |
| 1 | $-49.13 |
| 2 | $777.78 |
| 3 | $98.77 |
| 4 | $25.51 |
| 5 | $250.83 |
| 6 | $20.40 |