일련의 주기적인 현금 흐름(납부금 및 수입금)과 할인율에 기초하여 투자의 순 현재 가치를 지정하는 Double 데이터 형식을 반환합니다.
구문
NPV( rate, values ())
NPV 함수 구문에 포함되는 인수는 다음과 같습니다.
인수 |
설명 |
rate |
필수 요소입니다. 기간 길이에 대한 할인율을 10진수로 나타내는 이중 지정입니다. |
values () |
필수 요소입니다. 현금 흐름 값을 지정하는 Double 의 배열입니다. 배열에는 하나 이상의 음수 값(결제) 및 하나의 양수 값(영수증)이 포함되어야 합니다. |
주의
투자의 순 현재 가치는 일련의 미래 납부금과 수입금에 대한 현재 가치입니다.
NPV 함수는 배열 내의 값 순서를 사용하여 지불 및 영수증의 순서를 해석합니다. 결제 및 영수증 값을 올바른 순서로 입력해야 합니다.
NPV 투자는 첫 번째 현금 흐름 값 날짜에서 한 기간 전에 시작하여 배열의 마지막 현금 흐름 값으로 끝납니다.
순 현재 가치는 미래 현금 흐름에 기초하여 계산됩니다. 첫 번째 기간이 시작될 때 첫 번째 현금 흐름이 발생하면 첫 번째 값은 values( )의 현금 흐름 값에 포함되지 않고 NPV의 반환 값에 추가되어야 합니다.
NPV 함수는 PV 함수가 마침표의 끝 또는 시작 부분에서 현금 흐름을 시작할 수 있다는 점을 제외하고 PV 함수(현재 값)와 유사합니다. 변수 NPV 현금 흐름 값과 달리 PV 현금 흐름은 투자 전반에 걸쳐 수정되어야 합니다.
예제
참고: VBA(Visual Basic for Applications) 모듈에서 이 함수를 사용하는 경우를 예로 들어 보겠습니다. VBA 사용에 대해 자세히 알아보려면 검색 옆의 드롭다운 목록에서 개발자 참고를 선택하고 검색 상자에 검색어를 하나 이상 입력하세요.
다음은 NPV 함수를 사용하여 Values() 배열에 포함된 일련의 현금 흐름에 대한 순 현재 가치를 반환하는 예제입니다. RetRate는 고정된 내부 수익률을 나타냅니다.
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 ' Calculate net present value. NetPVal = NPV(RetRate, Values()) Msg = "The net present value " & _ "of these cash flows is " Msg = Msg & Format(NetPVal, Fmt) & "." ' Display net present value. MsgBox Msg