Calcul de crédit immobilier/à la consomation

Description

Ben comme tout le monde j'ai comme projet de contracter un crédit à taux fixe pour acheter une maison :)
Mais moi les banquiers... Hum enfin bon vous voyez...
Donc leurs simulations c'est très joli mais j'aime bien pouvoir faire les miennes et vérifier les leurs.
Voici donc un chti code source pour calculer plein de chose comme la somme prélevée chaque mois, le taux d'endettement, le tableau d'amortissement etc...

Source / Exemple :


'Aquisition des informations
ca = Val(Text1) 'Capital emprunté (Euros)
n = Val(Text2) 'Nombre de périodes (en mois)
tx = Val(Text3) 'Taux fixe d'emprunt (%)
If tx = 0 Then tx = 0.0000001
txm = tx / 100 / 12

'Amortissement le 1er mois
a(1) = ca * txm / ((1 + txm) ^ n - 1)

'Intérêt 1er mois
i(1) = ca * txm

'somme prélevée mensuelle
pr = i(1) + a(1)

'Début de la boucle du tableau d'amortissement
'Le tableaux c() contiendra le capital restant dû période après période (mois après mois) en euros.
'Le tableaux i() contiendra les intérets filés à la banque sur chaque période, en euros
'Le tableaux a() contiendra le capital remboursé sur chaque période, en euros.
c(1) = ca
ttint = 0
For xx = 2 To n
    c(xx) = c(xx - 1) - a(xx - 1)
    i(xx) = c(xx) * txm
    a(xx) = pr - i(xx)
    ttint = ttint + i(xx)
Next xx

derr = a(n) - c(n)
a(n) = c(n)
i(n) = i(n) + derr

If tx = 0.000001 Then
    i(1) = 0
    For xx = 2 To n
        a(xx) = c(1) / n
        i(xx) = 0
        c(xx) = c(xx - 1) - a(xx)
    Next xx
    ttint = 0
    derr = 0
    a(n) = c(n)
End If

ttint = ttint + i(1) + derr

'Affichage
Text4 = Int(ttint * 100 + 0.5) / 100 'Total des intérets

'Il faut créer deux OptionBox : Option1 et Option2
'Option1 et option2 doivent être placées dans la même frame
'On ne testera que Option1 qui cochée permet d'indiquer au programme
'le prix de l'assurance par période (Euros/mois) et non
'en % du capital (ça c'est si option2 est cochée)

If Option1.Value = True Then
    Text7 = Int((Val(Text6) * 100 / Val(Text1)) * 100) / 100
    'Ben comme là on a donné le prix de l'assurance par période, on calcul
    'et on affiche pour information ce que ça donne en % du capital
Else
    Text6 = Int((Val(Text7) / 100 * Val(Text1)) * 100) / 100
    'Ben là l'utilisateur a choisi d'indiquer le prix de l'assurance en % du capital
    'Donc on calcul et on affiche pour information ce que ça donne par période
End If

Text8 = Val(Text6) * Val(Text2) 'C'est la somme totale que vous paierez d'assurance...
Text5 = Int((pr + Val(Text6)) * 100 + 0.5) / 100 'ca c'est l'échéance : ce que vous paierez chaque mois.

Text11 = Val(Text4) + Val(Text8) 'Ca c'est le cout total du crédit, assurance et intérets compris.

'Taux d'endettement
'Label15 affiche ce taux.
'S'il est inférieur à 33.1% alors le taux est affiché en vert, sinon c'est rouge.

Label15 = Str$(Int(((Val(Text10) + Val(Text12) + Val(Text5)) * 100 / Val(Text9)) * 100) / 100)
'text9 c'est le montant de vos revenus (salaires + pensions + etc...)
'text10 c'est votre loyer mensuel si vous êtes locataires
'Text12 c'est la somme total des autres emprunts que vous avez contracté ailleurs, si vous en avez.

If Val(Label15) < 33.1 Then
    Label15.ForeColor = &H8000&
Else
    Label15.ForeColor = &H80&
End If

deb = 1
fin = 2

Conclusion :


Dimensionnez les tableaux a() c() et i() avec disons 1000 périodes max (plus de 80 ans de crédits mdr)
Créez les TextBox et Label nécessaires avec des chti commentaires à vous pour pas vous perdre dans tous ces chiffres. Oubliez pas Option1 et option2 pour le calcul de l'assurance.

Enfin mettez tout ce code dans un gros bouton genre "calculer" sur lequel vous appuirez quand vous aurez entré le capital, le nb de période, le taux fixe, l'assurance, votre salaire, votre revenu, votre loyer, vos autres emprunts.

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.