PPMT function in Excel

Hello, Experts!

I have met PPMT function in excel. I found information ow to use it, but dunnow what this functuion presents from itself.

It would be great to hear from you the formul, how is made this PPMT.

Best regards and hope on you help,
Who is Participating?
jelenConnect With a Mentor Commented:
Sorry - it is a mythical finance forum ;-)

Check out the code snippet forums at PHPBuilder.com  http://www.phpbuilder.com/snippet/detail.php?type=snippet&id=96

This code will get you the monthly payment amount.  

I don't know PHP.  If I can convert the VBA to English, can you convert it to PHP?

Monthly Payment = Result from above code snippet
Monthly Interest Rate = Annual Interest Rate / 12
Present Value = Amount Financed from code snippet
Loop from 1 to the period number in question
  Calculate the Interest for this Period as Present Value * Monthly Interest Rate
  Calculate This month's principal payment as Monthly Payment - Interest for this Period.
  Calculate Present Value as Present Value - This months principal payment
End Loop

Display that the PPMT is This Months Principal Payment from the last iteration of the loop.

See under PPMT and PV in Help|Content&Index: Find. Then delete _both_ questions (you posted in duplicate)
sviksnaAuthor Commented:
Could you tell me the diference of the PPMT an VP. I am not very good at that all, so i'd realy like to hear from you that! :)

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.


The following two paragraphs are right out of the Help, Contents and Index description for both items from Excel.  I agree with cri that you delete this question and use the help from Excel itself to answer this question.

PPMT:  Returns the payment on the principal for a given period for an investment based on periodic, constant payments and a constant interest rate.

PV:  Returns the present value of an investment. The present value is the total amount that a series of future payments is worth now. For example, when you borrow money, the loan amount is the present value to the lender.

Hope this helps.
Anne TroyEast Coast ManagerCommented:
There's also a fairly nice site here, though it does not contain that particular function:

sviksnaAuthor Commented:
I don't need to know what it retunrs and how to use it.. i wana know the formula it presents inside this PPMT!

let's say so.. function myCalculations(rate, value, count) needs 3 (PPMT also is function also got n parameters) parameters and it looks in action like myCalculations(45%, 1/2, 45);

so, you get output, say 34% from value;

but how we get it???????

we get it becouse

myCalculations(rate, value, count)
myCalculations.value_to_return =  value / count * rate

"value / count * rate"

so... THIS IS the FORMULA of myCalculations!!!

I wana know, what operations are made and what formula is hidden in the PPMT function!!!

That is the anwer i'd like to hear!?!?

This question is better suited for a Finance forum in Experts-Exchange!

Here is pseudocode to show roughly how ppmt works

Function ppmt(Rate, Per, NPer, PV)
' Rate = Interest rate per period
' Per = Which period you want to calculate principal payment
' Nper = # Periods in the annuity or loan
' PV = Present Value of the annuity or loan

' Calculate the payment per period
ThisPmt = Application.WorksheetFunction.Pmt(Rate, NPer, PV)

' Loop through each year up to Per
For i = i to Per
     ' Calculate the Interest portion for this period
     Int = Rate * PV
     ' Calculate the Principal portion for this period
     Prin = ThisPmt - Int
     ' Calculate the new PV at the end of Period I
     PV = PV - Prin
Next i

PPmt = Prin

End Function

sviksnaAuthor Commented:
thanx for VB code but i need it for PHP :)

Maybe you could tell me where is that Finance forum?

The payments are calculated by iteration rather than by a direct formula; take a formula for any of the annuities or perpetuities and plug in the other variables until you get a result. If you do this by binary iteration (dividing the remaining data in half), you should get a good result in ten tries. Note that Excel has a default of 10 iteration tries in its options"
Since the payments include interest that is usually variable depending on the specific date, you should be able to calculate it for that specific date, then simply substract the interest portion and you will get the principal portion of the payment.

ex. Future Value of an annuity due (use & for an exponent):
FVA=PMT[((1+r)&n - 1)/r]&(1+r)

If no objections are made in the next 5 days, I will force accept the contribution by jelen.

Community Support Moderator @ Experts-Exchange

P.S. This post is made as part of the general effort to clean up this topic area, meaning, looping through all the open questions with no activity since 21 days.
Answer accepted by:

Community Support Moderator
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.