Before we dwell into the program code, we need to know some basic financial concepts. The term loan amortization means the computation of the amount of equal periodic payments necessary to provide lender with a specific interest return and repay the loan principal over a specified period. The loan amortization process involves finding the future payments whose present value at the load interest rate equal the amount of initial principal borrowed. Lenders use a loan amortization schedule to determine these payment amounts and the allocation of each payment to interest and principal.
The formula to calculate periodic payment is
where PVIFAn is known as present value interest factor for an annuity . The formula to compute PVIFAn
PVIFAn =1/i - 1/i(1+i)n
where n is the number of payments. Normally you can check up a financial table for the value of PVIFAn and then calculate the payments manually. You can also use a financial calculator to compute the values. However, if you already know how to write program in VB, why not create your very own financial calculator.
To calculate the payments for interest, you can multiply the initial principal with the interest rate, then use periodic payment to minus payment for interest. To calculate the balance at the end of a period, we use the formula
End-of_year principal=Beginning_of_year principal - periodic payment
Dim Num, n As Integer Dim I, P, PVIFA, r, pmt, PI, PP As Double Public Sub Cmd_Calculate_Click() P = Txt_Principal.Text Num = Txt_Num_payment.Text r = Txt_Interest.Text I = r / 100 PVIFA = 1 / I - 1 / (I * (1 + I) ^ Num) pmt = P / PVIFA Lbl_Amtpayment.Caption = Round(pmt, 2) End Sub Private Sub Cmd_Create_Click() List_Amortization.AddItem "n" & vbTab & "Periodic" & vbTab & vbTab & "Payment" & vbTab & vbTab & "Payment" & vbTab & vbTab & "Balance" List_Amortization.AddItem "" & vbTab & "Payment" & vbTab & vbTab & "Interest" & vbTab & vbTab & "Principal" Do n = n + 1 PI = P * I PP = pmt - PI P = P - PP List_Amortization.AddItem n & vbTab & Round(pmt, 2) & vbTab & vbTab & Round(PI, 2) & vbTab & vbTab & Round(PP, 2) & vbTab & vbTab & Round(P, 2) If n = Num Then Exit Do End If Loop End Sub
The Tutor and webmaster of Vbtutor.net, Dr.Liew Voon Kiong , holds a Bachelor Degree in Mathematics, a Master Degree in Management and a Doctoral Degree in Business Administration. He obtained the DBA degree from the University of South Australia.
He has been involved in programming for more than years. He created the popular online Visual Basic Tutorial in 1996 and since then the web site has attracted millions of visitors .It is the top-ranked Visual Basic tutorial website in many search engines including Google. Besides that, he has also written a few Visual Basic related books. One of the books, Visual Basic 6 Made Easy was published by Creativespace.com, an Amazon.com publisher.