ฟังก์ชัน NPV

นำไปใช้กับ
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

ส่งกลับ สองชั้น ที่ระบุมูลค่าปัจจุบันสุทธิของการลงทุนโดยยึดตามชุดข้อมูลกระแสเงินสดเป็นงวด (การชําระเงินและใบเสร็จ) และอัตราส่วนลด

ไวยากรณ์

NPV(rate, values () )

ไวยากรณ์ของฟังก์ชัน NPV มีอาร์กิวเมนต์ดังนี้

อาร์กิวเมนต์ คำอธิบาย
อัตรา จำเป็น Double ที่ระบุอัตราส่วนลดตลอดระยะเวลาซึ่งแสดงเป็นทศนิยม
ค่า () จำเป็น อาร์เรย์ของ Double ที่ระบุมูลค่ากระแสเงินสด อาร์เรย์ต้องมีอย่างน้อยหนึ่งค่าลบ (การชําระเงิน) และค่าบวกหนึ่งค่า (ใบเสร็จ) หนึ่งค่า

    

ข้อสังเกต

มูลค่าปัจจุบันสุทธิของการลงทุนคือมูลค่าปัจจุบันของการชําระเงินและใบเสร็จรับเงินในอนาคต

ฟังก์ชัน NPV จะใช้ลําดับของค่าภายในอาร์เรย์เพื่อแปลลําดับการชําระเงินและใบเสร็จรับเงิน ตรวจสอบให้แน่ใจว่าได้ใส่ค่าการชําระเงินและใบเสร็จของคุณตามลําดับที่ถูกต้อง

การลงทุน NPV จะเริ่มต้นหนึ่งงวดก่อนวันที่ของมูลค่ากระแสเงินสดแรก และสิ้นสุดด้วยมูลค่ากระแสเงินสดล่าสุดในอาร์เรย์

การคํานวณมูลค่าปัจจุบันสุทธิจะคํานวณจากกระแสเงินสดในอนาคต ถ้ากระแสเงินสดแรกของคุณเกิดขึ้นเมื่อเริ่มต้นงวดแรก ค่าแรกจะต้องบวกกับค่าที่ส่งกลับโดย NPV และต้องไม่รวมอยู่ในมูลค่ากระแสเงินสดของ values( )

ฟังก์ชัน NPV จะคล้ายกับฟังก์ชัน PV (มูลค่าปัจจุบัน) ยกเว้นฟังก์ชัน PV อนุญาตให้กระแสเงินสดเริ่มต้นที่จุดสิ้นสุดหรือจุดเริ่มต้นของคาบเวลา กระแสเงินสด PV ต้องคงที่ตลอดการลงทุน ซึ่งต่างจากมูลค่ากระแสเงินสด NPV ผันแปร

ตัวอย่าง

หมายเหตุ

ตัวอย่างต่อไปนี้จะสาธิตการใช้ฟังก์ชันนี้ในโมดูล Visual Basic for Applications (VBA) สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการทํางานกับ 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