출처 : http://blog.naver.com/chchcom?Redirect=Log&logNo=3156879
◆ Now 함수
사용자 컴퓨터의 시스템 날짜나 시간에 따른 현재 날짜와 시간을 지정하는 Variant (Date) 값을 반환합니다.
▶ 구문 : Now
Now 함수 예제
이 예제는 Now 함수를 사용하여 현재 시스템 날짜와 시간을 반환합니다.
Dim Today
Today = Now ' 현재 시스템 날짜와 시간을 지정합니다.
◆ NPer 함수
정기 고정 지불액과 고정 이율을 기준으로 연금의 기간 수를 지정하는 Double을 반환합니다.
▶ 구문 : NPer(rate, pmt, pv[, fv[, type]])
NPer 함수는 다음과 같이 명명된 인수로 구성되어 있습니다.
구성 요소
설명
rate
pmt
pv
Fv
Type
필수. 일정 기간 당 이율을 지정하는 Double 입니다. 예를 들면 연 이율(APR) 10%로 자동차 대부를 받고 매월 지
불하려면 기간 당 비율은 0.1/12 또는 0.0083이 됩니다.
필수. 각 기간에 지불할 지불액을 지정하는 Double 입니다. 대개 지불액에는 지불 기간 동안 변경되지 않는 원금
과 이율이 포함됩니다.
필수. 장래의 지불액이나 수령액에 대한 현재의 값을 지정하는 Double 입니다. 예를 들면 돈을 대부받아 차를 살
때 대출액은 대금업자에게 매달 지불할 현재의 값이 됩니다.
선택. 마지막으로 지불한 후에 원하는 장래의 값이나 자금 잔액을 지정하는 Variant입니다. 예를 들면 마지막으로
지불한 후의 가치가 0 이므로 장래의 대출금은 0원이 됩니다. 그러나 자녀들의 교육 기간 18년에 걸쳐 37,500,000
원을 저축하고 싶다면 장래의 값은 37,500,000원이 됩니다. 생략하면 0으로 간주합니다.
선택. 지불 만기일을 지정하는 Variant 입니다. 지불 기간이 끝날 때 지불액을 지불하려면 0, 기간이 시작될 때 지
불하려면 1을 사용합니다. 생략하면 0으로 간주합니다.
▶ 참고 : 연금은 일정 기간에 걸쳐 고정된 금액을 지불하는 것입니다. 연금은 대부(주택 저당과 같이)나 투자(월별 저축 계획과 같
이)가 될 수 있습니다.
모든 인수에 대해 지불하는 금액(예: 저축 예금)은 음수로, 수령하는 금액(예: 배당금)은 양수로 표시합니다.
NPer 함수 예제
다음은 Pval 내에 포함된 융자액을 지불하기 위해 불입해야 할 분기 회수를 반환하기 위해 NPer 함수를 사용하는 예제입니다. 분
기당 이자율(APR / 12), 이자가 발생하기 위한 불입 기간(Period), 불입액(Payment), 미래 융자액(FVal), 기수불 또는 기말불 어느 쪽
에 불입이 이루어지는지 가리키는 수(PayType) 등이 주어집니다.
Dim FVal, PVal, APR, Payment, PayType, TotPmts
Const ENDPERIOD = 0, BEGINPERIOD = 1 ' 불입이 된 경우.
FVal = 0 ' 대개 융자금에 대해서는 0으로 주어집니다.
PVal = InputBox("얼마를 빌리겠습니까?")
APR = InputBox("대부금의 1년당 퍼센트 비율은 얼마입니까?")
If APR > 1 Then APR = APR / 100 ' 적절한 형태인지 확인합니다.
Payment = InputBox("매달 얼마를 지불하길 원합니까?")
PayType = MsgBox("월말에 지불하겠습니까?", vbYesNo)
If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD
TotPmts = NPer(APR / 12, -Payment, PVal, FVal, PayType)
If Int(TotPmts) <> TotPmts Then TotPmts = Int(TotPmts) + 1
MsgBox "대부금 지불에 대한 기간입니다" & TotPmts
◆ NPV 함수
정기적인 자금 흐름(지불액과 수령액)과 할인율을 기준으로 현재의 순 투자 가치를 지정하는 Double을 반환합니다.
▶ 구문 : NPV(rate, values())
NPV 함수는 다음과 같이 명명된 인수로 구성되어 있습니다.
구성 요소
설명
rate
values()
필수. 전 기간에 걸친 할인율을 지정하는 Double로, 소수로 표시합니다.
필수. 자금 흐름 값을 지정하는 Double 유형의 배열 입니다. 배열에는 최소 하나의 음수(지불액)와 하나의 양수(수
령액)가 있어야 합니다.
▶ 참고 : 현재의 순 투자 가치는 장래의 지불액과 수령액에 대한 현재의 값입니다.
NPV 함수는 배열에 있는 값의 순서를 사용하여 지불액과 수령액의 순서를 해석합니다. 지불액과 수령액을 정확한 순서로 입력
했는지 확인하십시오.
NPV 투자는 배열의 첫번째 자금 흐름 값의 날짜 이전에 하나의 기간을 시작하여 마지막 자금 흐름 값으로 끝납니다.
현재의 순 투자 가치는 장래의 자금 흐름을 기준으로 계산됩니다. 첫번째 자금 흐름이 첫 기간이 시작할 때 발생하면 NPV가 계
산해 낸 값에 첫번째 값을 추가해야 하고 values()의 자금 흐름 값에는 포함할 필요가 없습니다.
PV 함수가 기간의 끝이나 시작에서 자금 흐름이 시작될 수 있다는 것을 제외하면 NPV 함수는 PV 함수(현재 값)와 비슷합니다.
변수 NPV 자금 흐름 값과는 달리 PV 자금 흐름은 투자의 전 기간에 걸쳐 고정되어야 합니다.
NPV 함수 예제
다음은 Values( ) 배열 내에 포함된 연속적인 자금 흐름에 대한 순수 현재 금액을 반환하기 위해 NPV 함수를 사용하는 예제입니
다. RetRate는 결정된 내부 수익률을 나타냅니다.
Dim Fmt, Guess, RetRate, NetPVal, Msg
Static Values(5) As Double ' 배열 초기화.
Fmt = "###,##0.00" ' 금액 서식을 정의합니다.
Guess = .1 ' Guess 변수를 10 퍼센트로 초기화합니다.
RetRate = .0625 ' 고정 내부 이자율 설정합니다..
Values(0) = -70000 ' 사업 초기 비용.
' 연속 4년에 대한 소득을 반영하는 양의 값을 갖는 자금 흐름.
Values(1) = 22000 : Values(2) = 25000
Values(3) = 28000 : Values(4) = 31000
NetPVal = NPV(RetRate, Values()) ' 현재 순이익 계산.
Msg = "이 현금 유입의 현재 순이익입니다 "
Msg = Msg & Format(NetPVal, Fmt) & "."
MsgBox Msg ' 현재 순이익 표시.