Online Reference

Home

Microsoft Reference
Knowledge Developer Database Internet Resource Forum
VBA
Financial Function
ดาวน์โหลดคู่มือ

Rate Function

VBA Function, ส่งออกค่าเป็นประเภทข้อมูล Double ที่ระบุอัตราดอกเบี้ยในการคำนวณ

ไวยากรณ์

Rate(nper, pv [,fv [,type [,guess]]] )

อากิวเมนต์ของฟังก์ชัน Rate มีความหมาย คือ

ส่วน รายละเอียด
nper บังคับ, เป็นประเภทข้อมูล Integer, ระบุจำนวนงวดการจ่ายทั้งหมด เช่น การจ่ายเงินกู้รายเดือนของเงินกู้ 4 ปี จำนวนงวดทั้งหมด คือ 4 * 12 (หรือ 48) งวดการจ่าย
pv ไม่บังคับ, เป็นประเภทข้อมูล Variant, มูลค่าปัจจุบัน (หรือเงินรวมทั้งหมด) ของชุดการจ่ายสำหรับมูลค่าอนาคต เช่น การยืมเงินเพื่อซื้อรถยนต์ เงินกู้ คือ มูลค่าปัจจุบันที่ผู้กู้ต้องจ่ายเป็นรายเดือน ถ้าไม่กำหนด จะใช้ค่าเป็น 0
fv ไม่บังคับ, เป็นประเภทข้อมูล Double, ระบุมูลค่าในอนาคต หรือจำนวนสดคงเหลือเมื่อสิ้นสุดงวดการจ่าย เช่น ต้องการฝากเงินออมเพื่อห้ได้ ฿50,000 ในระยะเวลา 18 เดือน เงินจำนวน ฿50,000 คือ มูลค่าอนาคต ถ้าไม่กำหนด จะใช้ค่าเป็น 0
type ไม่บังคับ, เป็นประเภทข้อมูล Variant, ระบุกำหนดการจ่าย ใช้ 0 ถ้ากำหนดชำระเป็นสิ้นงวด หรือ 1 ถ้ากำหนดชำระเป็นต้นงวด ถ้าไม่กำหนด จะใช้ค่าเป็น 0
guess ไม่บังคับ, เป็นประเภทข้อมูล Variant, ระบุค่าในการประมาณค่าส่งออกของฟังก์ชัน IRR ถ้าไม่กำหนด จะให้ค่า guess เป็น 0.1 (10%)

ลักษณะการประยุกต์

งวดการจ่ายเป็นชุดการจ่ายที่คงที่ตลอดระยะเวลาทั้งหมด การจ่ายสามารถเป็นการชำระเงินกู้ ( เช่น ค่างวดเงินกู้ซ้อบ้าน) หรือการลงทุน ( เช่น การฝากเงินออมเป็นรายเดือน)

อากิวเมนต์ทั้งหมด เงินสดจ่ายออก ( เช่น การฝากเงินออม) ให้เป็นค่าลบ เงินสดรับเข้า ( เช่น เงินปันผล) ให้เป็นบวก

ฟังก์ชัน Rate จำคำนวณแบบซ้ำ (iteration) โดยเริ่มจากค่าของ guess โดยฟังก์ชัน Rate จะคำนวณจนกระทั่งได้ค่าแม่นยำภายใน 0.00001% ถ้าฟังก์ชัน Rate ไม่สามารถหาได้ภายใน 20 รอบ จะไม่สามารถหาคำตอบได้

ดูเพิ่มเติม

ฟังก์ชัน DDB, ฟังก์ชัน FV, ฟังก์ชัน IPMT, ฟังก์ชัน IRR, ฟังก์ชัน MIRR, ฟังก์ชัน NPer, ฟังก์ชัน NPV, ฟังก์ชัน Pmt, ฟังก์ชัน PPmt, ฟังก์ชัน PV, ฟังก์ชัน SLN, ฟังก์ชัน SYD

ตัวอย่าง

ตัวอย่างการใช้ฟังก์ชัน Rate ในการคำนวณอัตราดอกเบี้ยของเงินกู้ที่กำหนดจำนวนงวดทั้งหมด (TotPmts), การจ่ายเงินกู้ (Payment), มูลค่าปัจจุบันหรือเงินต้น (PVal), มูลค่าเงินกู้ในอนาคต (FVal), ตัวเลขที่ระบุกำหนดการจ่าย (PayType), และค่าประมาณของอัตราดอกเบี้ย (Guess)

Dim Fmt, FVal, Guess, PVal, Payment, TotPmts, PayType, APR
' เมื่อมีการจ่าย
Const ENDPERIOD = 0, BEGINPERIOD = 1

' กำหนดรูปแบบร้อยละ
Fmt = "##0.00"
' ค่า FV ของเงินกู้มักจะกำหนดเป็น 0
FVal = 0
' ค่า Guess 10%
Guess = .1

PVal = InputBox("How much did you borrow?")
Payment = InputBox("What's your monthly payment?")
TotPmts = InputBox("How many monthly payments do you have to make?")

PayType = MsgBox("Do you make payments at the end of the month?", _
  vbYesNo)

If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD

APR = (Rate(TotPmts, -Payment, PVal, FVal, PayType, Guess) * 12) * 100
MsgBox "Your interest rate is " & Format(CInt(APR), Fmt) & " percent."