Поделиться через


Функция NPV

Обновлен: Ноябрь 2007

Возвращает значение типа Double, определяющее величину чистой приведенной стоимости инвестиций на основе ряда периодических денежных потоков (платежей и поступлений) и учетной ставки.

Function NPV( _
   ByVal Rate As Double, _
   ByRef ValueArray() As Double _
) As Double

Параметры

  • Rate
    Обязательный. Представленное в десятичном виде значение типа Double, задающее размер учетной ставки за период времени.

  • ValueArray
    Обязательный. Массив значений типа Double, определяющий значения денежных операций. Этот массив должен содержать хотя бы одно отрицательное значение (платеж) и одно положительное значение (поступление).

Исключения

Тип исключения

Номер ошибки

Условие

ArgumentException

5

ValueArray имеет значение Nothing, ранг ValueArray <> 1, или Rate = -1

См. столбец "Номер ошибки", если выполняется обновление приложений Visual Basic 6.0, в которых используется неструктурированная обработка ошибок. (Можно сравнить номер ошибки с Свойство Number (объект Err).) Однако, по возможности, следует изменить такую систему управления ошибками на Обзор структурной обработки исключений в Visual Basic.

Заметки

Чистая приведенная стоимость инвестиций представляет собой текущее значение будущих платежей и поступлений.

В функции NPV платежи и поступления интерпретируются в том порядке, в котором они указаны в массиве. Убедитесь, что значения платежей и поступлений упорядочены верно.

Инвестиции в функции NPV начинаются на один период ранее даты значения первой денежной операции и заканчиваются последним имеющимся в массиве значением денежной операции.

Расчет чистой приведенной стоимости выполняется на основе будущих денежных операций. Если первая денежная операция производится в начале первого периода, то к значению, возвращаемому функцией NPV, необходимо добавить первое значение, причем оно не должно включаться в значения денежных операций, имеющиеся в ValueArray.

Функция NPV сходна с функцией PV (текущая стоимость), за исключением того, что в функции PV денежные операции разрешены как в начале, так и в конце периода. В отличие от используемых в функции NPV переменных значений денежных потоков используемые в PV денежные потоки должны быть постоянными на всем протяжении периода инвестиций.

Пример

В этом примере функция NPV используется для возврата чистой приведенной стоимости для ряда денежных операций, содержащихся в массиве values(). Возвращаемое значение, сохраненное в FixedRetRate, представляет собой фиксированную внутреннюю норму прибыли.

' Define money format.
Dim MoneyFmt As String = "###,##0.00"
' Define percentage format.
Dim PercentFmt As String = "#0.00"

Dim values(4) As Double
' Business start-up costs.
values(0) = -70000
' Positive cash flows reflecting income for four successive years.
values(1) = 22000
values(2) = 25000
values(3) = 28000
values(4) = 31000

' Use the NPV function to calculate the net present value.
' Set fixed internal rate.
Dim FixedRetRate As Double = 0.0625
' Calculate net present value.
Dim NetPVal As Double = NPV(FixedRetRate, values)
' Display net present value.
MsgBox("The net present value of these cash flows is " & _
    Format(NetPVal, MoneyFmt) & ".")

Требования

Пространство имен:Microsoft.VisualBasic

**Модуль:**Financial

**Сборка:**Visual Basic (библиотека времени выполнения, в Microsoft.VisualBasic.dll)

См. также

Ссылки

Функция IRR

Функция MIRR

Сводка по финансовым функциям

ArgumentException