Financial.PPmt(Double, Double, Double, Double, Double, DueDate) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mengembalikan nilai yang menentukan pembayaran pokok untuk periode anuitas tertentu berdasarkan pembayaran tetap berkala dan suku bunga tetap.
public static double PPmt (double Rate, double Per, double NPer, double PV, double FV = 0, Microsoft.VisualBasic.DueDate Due = Microsoft.VisualBasic.DueDate.EndOfPeriod);
static member PPmt : double * double * double * double * double * Microsoft.VisualBasic.DueDate -> double
Public Function PPmt (Rate As Double, Per As Double, NPer As Double, PV As Double, Optional FV As Double = 0, Optional Due As DueDate = Microsoft.VisualBasic.DueDate.EndOfPeriod) As Double
Parameter
- Rate
- Double
Wajib diisi. Suku bunga per periode. Misalnya, jika Anda mendapatkan pinjaman mobil dengan tingkat persentase tahunan (APR) sebesar 10 persen dan melakukan pembayaran bulanan, tarif per periode adalah 0,1/12, atau 0,0083.
- Per
- Double
Wajib diisi. Periode pembayaran dalam rentang 1 hingga NPer
.
- NPer
- Double
Wajib diisi. Jumlah total periode pembayaran dalam anuitas. Misalnya, jika Anda melakukan pembayaran bulanan pada pinjaman mobil empat tahun, pinjaman Anda memiliki total 4 x 12 (atau 48) periode pembayaran.
- PV
- Double
Wajib diisi. Nilai saat ini dari serangkaian pembayaran atau tanda terima di masa mendatang. Misalnya, ketika Anda meminjam uang untuk membeli mobil, jumlah pinjaman adalah nilai saat ini kepada pemberi pinjaman pembayaran mobil bulanan yang akan Anda lakukan.
- FV
- Double
Opsional. Nilai masa depan atau saldo tunai yang Anda inginkan setelah Anda melakukan pembayaran akhir. Misalnya, nilai masa depan pinjaman adalah $0 karena itu adalah nilainya setelah pembayaran akhir. Namun, jika Anda ingin menghemat $ 50.000 selama 18 tahun untuk pendidikan anak Anda, maka $ 50.000 adalah nilai masa depan. Jika dihilangkan, 0 diasumsikan.
- Due
- DueDate
Pilihan. Objek jenis DueDate yang menentukan kapan pembayaran jatuh tempo. Argumen ini harus berupa DueDate.EndOfPeriod
jika pembayaran jatuh tempo pada akhir periode pembayaran, atau DueDate.BegOfPeriod
jika pembayaran jatuh tempo pada awal periode. Jika dihilangkan, DueDate.EndOfPeriod
diasumsikan.
Mengembalikan
Pembayaran pokok untuk jangka waktu anuitas tertentu berdasarkan pembayaran tetap berkala dan suku bunga tetap.
Pengecualian
Per
<=0 atau Per
>NPer
.
Contoh
Contoh ini menggunakan PPmt
fungsi untuk menghitung berapa banyak pembayaran untuk periode tertentu adalah prinsipal ketika semua pembayaran memiliki nilai yang sama. Mengingat adalah tingkat persentase bunga per periode (APR / 12
), periode pembayaran yang porsi pokoknya diinginkan (Period
), jumlah total pembayaran (TotPmts
), nilai saat ini atau pokok pinjaman (PVal
), nilai pinjaman di masa mendatang (FVal
), dan angka yang menunjukkan apakah pembayaran jatuh tempo pada awal atau akhir periode pembayaran (PayType
).
Sub TestPPMT()
Dim PVal, APR, TotPmts, Payment, Period, P, I As Double
Dim PayType As DueDate
Dim Msg As String
Dim Response As MsgBoxResult
' Define money format.
Dim Fmt As String = "###,###,##0.00"
' Usually 0 for a loan.
Dim Fval As Double = 0
PVal = CDbl(InputBox("How much do you want to borrow?"))
APR = CDbl(InputBox("What is the annual percentage rate of your loan?"))
' Ensure proper form.
If APR > 1 Then APR = APR / 100
TotPmts = CDbl(InputBox("How many monthly payments do you have to make?"))
Response = MsgBox("Do you make payments at the end of month?", MsgBoxStyle.YesNo)
If Response = MsgBoxResult.No Then
PayType = DueDate.BegOfPeriod
Else
PayType = DueDate.EndOfPeriod
End If
Payment = Math.Abs(-Pmt(APR / 12, TotPmts, PVal, FVal, PayType))
Msg = "Your monthly payment is " & Format(Payment, Fmt) & ". "
Msg = Msg & "Would you like a breakdown of your principal and "
Msg = Msg & "interest per period?"
' See if chart is desired.
Response = MsgBox(Msg, MsgBoxStyle.YesNo)
If Response <> MsgBoxResult.No Then
If TotPmts > 12 Then MsgBox("Only first year will be shown.")
Msg = "Month Payment Principal Interest" & Environment.NewLine
For Period = 1 To TotPmts
' Show only first 12.
If Period > 12 Then Exit For
P = PPmt(APR / 12, Period, TotPmts, -PVal, FVal, PayType)
' Round principal.
P = (Int((P + 0.005) * 100) / 100)
I = Payment - P
' Round interest.
I = (Int((I + 0.005) * 100) / 100)
Msg = Msg & Period & vbTab & Format(Payment, Fmt)
Msg = Msg & vbTab & Format(P, Fmt) & vbTab & Format(I, Fmt) & Environment.NewLine
Next Period
' Display amortization table.
MsgBox(Msg)
End If
End Sub
Keterangan
Anuitas adalah serangkaian pembayaran tunai tetap yang dilakukan selama jangka waktu tertentu. Anuitas dapat berupa pinjaman (seperti hipotak rumah) atau investasi (seperti rencana penghematan bulanan).
Argumen Rate
dan NPer
harus dihitung menggunakan periode pembayaran yang dinyatakan dalam unit yang sama. Misalnya, jika Rate
dihitung menggunakan bulan, NPer
juga harus dihitung menggunakan bulan.
Untuk semua argumen, uang tunai yang dibayarkan (seperti deposito ke tabungan) diwakili oleh angka negatif; kas yang diterima (seperti pemeriksaan dividen) diwakili oleh angka positif.