PPmt Function [VBA]

Returns for a given period the payment on the principal for an investment that is based on periodic and constant payments and a constant interest rate.

Ícone de aviso

Esta função ou constante é ativada com a instrução Option VBASupport 1 imediatamente antes do código executável existente no módulo.


Pmt( Rate as Double, Per as Double, NPer as Double, PV as Double, [FV as Variant], [Due as Variant] )

Valor de retorno:



Rate is the periodic interest rate.

Per The period number for which you want to calculate the principal payment (must be an integer between 1 and Nper).

NPer is the total number of periods, during which annuity is paid.

PV is the (present) cash value of an investment.

FV (optional) is the future value of the loan / investment.

Due (optional) defines whether the payment is due at the beginning or the end of a period.

0 - the payment is due at the end of the period;

1 - the payment is due at the beginning of the period.

Códigos de erro

5 Chamada de procedimento inválido


REM ***** BASIC *****

Option VBASupport 1

Sub ExamplePPmt

' Calculate the principal payments during months 4 & 5, for a loan that is to be paid in full

' over 6 years. Interest is 10% per year and payments are made at the end of the month.

Dim ppMth4 As Double

Dim ppMth5 As Double

' Principal payment during month 4:

ppMth4 = PPmt( 0.1/12, 4, 72, 100000 )

print ppMth4 ' ppMth4 is calculated to be -1044,94463903636.

' Principal payment during month 5:

ppMth5 = PPmt( 0.1/12, 5, 72, 100000 )

print ppMth5' ppMth5 is calculated to be -1053,65251102833.

End Sub