ฟังก์ชัน NPV

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

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

ไวยากรณ์

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