Функция NPV
Обновлен: Ноябрь 2007
Возвращает значение типа Double, определяющее величину чистой приведенной стоимости инвестиций на основе ряда периодических денежных потоков (платежей и поступлений) и учетной ставки.
Function NPV( _
ByVal Rate As Double, _
ByRef ValueArray() As Double _
) As Double
Параметры
Rate
Обязательный. Представленное в десятичном виде значение типа Double, задающее размер учетной ставки за период времени.ValueArray
Обязательный. Массив значений типа Double, определяющий значения денежных операций. Этот массив должен содержать хотя бы одно отрицательное значение (платеж) и одно положительное значение (поступление).
Исключения
Тип исключения |
Номер ошибки |
Условие |
---|---|---|
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)