Site:  Cours VB.net  
E 3.2 Exemples:Mensualités d'un prêt.

 

Comment créer un programme qui calcul les mensualités d'un prêt ?

Dans l'espace Microsoft.VisualBasic il existe des fonctions financières. (VB 2003 et VB 2005)

 

Pmt calcul les mensualités d'un prêt.

 

Remboursement mensuel= Pmt( Rate, NPer, PV, FV, Due)

Rate
Obligatoire. Donnée de type Double indiquant le taux d'intérêt par période. Si taux d'intérêt annuel de 10 pour cent et si vous effectuez des remboursements mensuels, le taux par échéance est de 0,1/12, soit 0,0083.
NPer
Obligatoire. Donnée de type Double indiquant le nombre total d'échéances. Par exemple, si vous effectuez des remboursements mensuels dans le cadre d'un emprunt de quatre ans,il y a 4 * 12 (soit 48) échéances.
PV
Obligatoire. Double indiquant la valeur actuelle . Par exemple, lorsque vous empruntez de l'argent pour acheter une voiture, le montant du prêt correspond à la valeur actuelle (pour un emprunts il est négatif).
FV
Facultatif. Double indiquant la valeur future ou le solde en liquide souhaité au terme du dernier remboursement. Par exemple, la valeur future d'un emprunt est de 0 F car il s'agit de sa valeur après le dernier remboursement. Par contre, si vous souhaitez économiser 70 000 F sur 15 ans, ce montant constitue la valeur future. Si cet argument est omis, 0 est utilisée par défaut.
Due
Facultatif. Objet de type Microsoft.VisualBasic.DueDate indiquant la date d'échéance des paiements. Cet argument doit être DueDate.EndOfPeriod si les paiements sont dus à terme échu ou DueDate.BegOfPeriod si les paiements sont dus à terme à échoir (remboursement en début de mois). Si cet argument est omis, DueDate.EndOfPeriod est utilisé par défaut.

Noter que si Rate est par mois NPer doit être en mois; si Rate est en année NPer doit être en année.

 

Sub CalculPret()
Dim PVal, Taux, FVal, Mensualite, NPerVal As Double
Dim PayType As DueDate

Dim Response As MsgBoxResult
Dim Fmt As String

Fmt = "###,###,##0.00" ' format d'affichage.
FVal = 0 
'0 pour un prêt.
 

PVal = CDbl(InputBox("Combien voulez-vous emprunter?"))
Taux = CDbl(InputBox("
Quel est le taux d'intérêt annuel?"))
If Taux > 1 Then Taux = Taux / 100
' Si l'utilisateur à tapé 4 transformer en 0.04.
NPerVal =12* CDbl(InputBox("
Durée du prêt (en années)?"))
Response = MsgBox("
Echéance en fin de mois?", MsgBoxStyle.YesNo)
If Response = MsgBoxResult.No Then
  PayType = DueDate.BegOfPeriod
Else
  PayType = DueDate.EndOfPeriod
End If
Mensualite = Pmt(Taux / 12, NPerVal, -PVal, FVal, PayType)
MsgBox("
Vos mensualités seront de " & Format(Mensualite, Fmt) & " par mois")
End Sub

 

IPmt calcul les intérêts pour une période.

 

Calculons le total des intérêts:

Dim IntPmt, Total, P As Double

For P = 1 To TotPmts ' Total all interest.
IntPmt = IPmt(APR / 12, P, NPerVal, -PVal, Fval, PayType)
Total = Total + IntPmt
Next Period
 

 

Autres mots clés :

Calculer l'amortissement. DDB, SLN, SYD
Calculer la valeur future. FV
Calculer le taux d'intérêt. Rate
Calculer le taux de rendement interne. IRR, MIRR
Calculer le nombre de périodes. NPer
Calculer les paiements. IPmt, Pmt, PPmt
Calculer la valeur actuelle. NPV, PV

 

Par exemple:

Rate Permet de calculer le taux d'un prêt en connaissant la somme prêtée, le nombre de mois et la mensualité.