IPmt, fonction
Mise à jour : novembre 2007
Retourne une valeur de type Double indiquant les intérêts, pour une période donnée, d'une annuité basée sur des versements constants et périodiques et sur un taux d'intérêt fixe.
Function IPmt( _ ByVal Rate As Double, _ ByVal Per As Double, _ ByVal NPer As Double, _ ByVal PV As Double, _ Optional ByVal FV As Double = 0, _ Optional ByVal Due As DueDate = DueDate.EndOfPeriod _ ) As Double
Type d'exception | Numéro de l'erreur | Condition |
|---|---|---|
Per <= 0 ou Per > NPer |
Consultez la colonne « Numéro d'erreur » si vous mettez à niveau des applications Visual Basic 6.0 qui utilisent la gestion des erreurs non structurée. (Vous pouvez comparer le numéro d'erreur par rapport à Number, propriété (objet Err).) Toutefois, lorsque cela est possible, vous devez envisager de remplacer un tel contrôle d'erreur par Vue d'ensemble de la gestion structurée des exceptions pour Visual Basic.
Une annuité est une série de versements constants effectués sur une certaine période. Il peut s'agir d'un prêt (pour l'achat d'une maison, par exemple) ou d'un placement (tel qu'un plan d'épargne sur lequel de l'argent est versé chaque mois).
Les arguments Rate et NPer doivent être calculés à l'aide d'échéances exprimées dans les mêmes unités. Par exemple, si Rate est exprimé en mois, il doit en être de même pour NPer.
Pour tous les arguments, les sommes versées (telles que les dépôts sur un compte épargne) sont représentées par des nombres négatifs ; les sommes reçues (telles que les distributions de dividendes) sont représentées par des nombres positifs.
Cet exemple utilise la fonction IPmt pour calculer la proportion des intérêts dans le montant des remboursements d'un emprunt sachant que le montant des remboursements reste constant. Sont spécifiés le taux d'intérêt par période (APR / 12), la période de remboursement pour laquelle on souhaite connaître la proportion des intérêts (Period), le nombre total des remboursements (TotPmts), la valeur actuelle ou le capital de l'emprunt (PVal), la valeur future de l'emprunt (FVal) et un nombre indiquant si les remboursements s'effectuent au début ou à la fin des échéances (PayType).
Sub TestIPMT() Dim APR, PVal, Period, IntPmt, TotInt, TotPmts As Double Dim PayType As DueDate Dim Response As MsgBoxResult ' Usually 0 for a loan. Dim Fval As Double = 0 ' Define money format. Dim Fmt As String = "###,###,##0.00" PVal = CDbl(InputBox("How much do you want to borrow?")) APR = CDbl(InputBox("What is the annual percentage rate of your loan?")) If APR > 1 Then APR = APR / 100 ' Ensure proper form. TotPmts = CInt(InputBox("How many monthly payments?")) Response = MsgBox("Do you make payments at end of the month?", MsgBoxStyle.YesNo) If Response = MsgBoxResult.No Then PayType = DueDate.BegOfPeriod Else PayType = DueDate.EndOfPeriod End If For Period = 1 To TotPmts ' Total all interest. IntPmt = IPmt(APR / 12, Period, TotPmts, -PVal, Fval, PayType) TotInt = TotInt + IntPmt Next Period ' Display results. MsgBox("You will pay a total of " & Format(TotInt, Fmt) & _ " in interest for this loan.") End Sub
Espace de noms :Microsoft.VisualBasic
Module :Financial
Assembly :bibliothèque Visual Basic Runtime (dans Microsoft.VisualBasic.dll)