ترجع Double لتحديد القيمة الحالية الصافية لاستثمار استنادا إلى سلسلة من التدفقات النقدية الدورية (الدفعات والإيصالات) ومعدل الخصم.
بناء الجملة
NPV(rate, values () )
يحتوي بناء جملة الدالة NPV على الوسيطات التالية:
| الوسيطة | الوصف |
|---|---|
| التقييم | مطلوبة. معدل خصم مزدوج يحدد على طول الفترة، ويتم التعبير عنه كرقم عشري. |
| القيم () | مطلوبة. صفيف مزدوج يحدد قيم التدفقات النقدية. يجب أن يحتوي الصفيف على قيمة سالبة واحدة على الأقل (دفعة) وقيمة موجبة واحدة (إيصال). |
ملاحظات
إن القيمة الحالية الصافية للاستثمار هي القيمة الحالية لسلسلة مستقبلية من الدفعات والإيصالات.
تستخدم الدالة NPV ترتيب القيم ضمن الصفيف لتفسير ترتيب الدفعات والإيصالات. تأكد من إدخال قيم الدفع والإيصالات بالتسلسل الصحيح.
يبدأ استثمار NPV قبل تاريخ قيمة التدفق النقدي الأولى بفترة واحدة وينتهي مع آخر قيمة للتدفق النقدي في الصفيف.
يستند حساب صافي القيمة الحالية إلى التدفقات النقدية المستقبلية. إذا حدث التدفق النقدي الأول في بداية الفترة الأولى، فيجب إضافة القيمة الأولى إلى القيمة التي ترجعها NPV ويجب عدم تضمينها في قيم التدفق النقدي للقيم ( ).
تعد الدالة NPV مماثلة للدالة PV (القيمة الحالية)، باستثناء أن الدالة PV تسمح ببدء التدفقات النقدية في نهاية فترة أو بدايتها. على عكس قيم التدفقات النقدية المتغيرة في NPV ، يجب أن تكون التدفقات النقدية في PV ثابتة خلال الاستثمار.
مثال
ملاحظة
توضح الأمثلة التالية استخدام هذه الدالة في وحدة نمطية ل 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