다음을 통해 공유


NPV 함수

업데이트: 2007년 11월

일정 기간 현금 흐름(지불액과 수령액)과 할인율을 기준으로 현재의 순 투자 가치를 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의 현금 흐름 값에는 포함하지 않아야 합니다.

PV 함수가 기간의 끝이나 시작에서 현금 흐름이 시작될 수 있다는 것을 제외하면 NPV 함수는 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