Compartilhar via


Função VPL

Retorna um Double especificando o valor presente líquido de um investimento com base em uma série de fluxos de caixa periódicos (pagamentos e recibos) e uma taxa de desconto.

Sintaxe

NPV(rate, values( ))

A função NPV tem estes argumentos nomeados:

Sair Descrição
Taxa Obrigatório. Especifique duas vezes a taxa de desconto ao longo do período, expressa como uma decimal.
valores( ) Obrigatório. Matriz de Double especificando valores de fluxo de caixa. A matriz deve conter pelo menos um valor negativo (um pagamento) e um valor positivo (um recibo).

Comentários

O valor presente líquido de um investimento é o valor atual de uma série futura de pagamentos e recibos.

A função NPV usa a ordem de valores dentro da matriz para interpretar a ordem de pagamentos e recibos. Insira os valores de pagamento e recibo na sequência correta.

O investimento NPV começa um período antes da data do primeiro valor de fluxo de caixa e termina com o último valor de fluxo de caixa na matriz.

O cálculo do valor presente líquido baseia-se em fluxos de caixa futuros. Se o primeiro fluxo de caixa ocorrer no início do primeiro período, o primeiro valor deverá ser adicionado ao valor retornado pelo NPV e não deve ser incluído nos valores de fluxo de caixa dos valores( ).

A função NPV é semelhante à função PV (valor presente), exceto que a função PV permite que os fluxos de caixa comecem no final ou no início de um período. Ao contrário dos valores de fluxo de caixa NPV variáveis, os fluxos de caixa PV devem ser corrigidos durante todo o investimento.

Exemplo

Este exemplo usa a função NPV para retornar o valor presente líquido para uma série de fluxos de caixa contidos na matriz Values(). RetRate representa a taxa interna fixa de retorno.

Dim Fmt, Guess, RetRate, NetPVal, Msg
Static Values(5) As Double    ' Set up array.
Fmt = "###,##0.00"    ' Define money format.
Guess = .1    ' Guess starts at 10 percent.
RetRate = .0625    ' Set fixed internal rate.
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
NetPVal = NPV(RetRate, Values())    ' Calculate net present value.
Msg = "The net present value of these cash flows is "
Msg = Msg & Format(NetPVal, Fmt) & "."
MsgBox Msg    ' Display net present value.

Confira também

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.