Cumul inter

pim8
Messages postés
11
Date d'inscription
samedi 8 juillet 2017
Statut
Membre
Dernière intervention
10 juillet 2017
- Modifié le 9 juil. 2017 à 13:57
vb95
Messages postés
2629
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
13 mai 2022
- 11 juil. 2017 à 01:20
j’exécute ce script pour la programmation de CUMUL.inter et ca marche pas !!
Function cumul_inter(Taux As Double, Capital As Long, n As Byte) As Double

'Le tableaux c() contiendra le capital restant dû période après période (mois après mois).
'Le tableaux i() contiendra les intérets dus à la banque sur chaque période.
'Le tableaux a() contiendra le capital amorti/remboursé sur chaque période.
Dim a(), i(), c() As Double
Dim xx As Integer

ReDim a(1), i(1), c(1)
a(0) = Capital / n
i(0) = Capital * Taux
mensualite = i(0) + a(0)
'debut de boucle pour le tabbleau d'amortissement
c(0) = Capital
totalint = i(0)
'boucle pour terminer le tableau d'amortissement
For xx = 1 To n
            ReDim Preserve a(xx), i(xx), c(xx)
            c(xx) = c(xx - 1) - a(xx - 1)
            i(xx) = c(xx) * Taux
            a(xx) = mensualite - i(xx)
            totalint = totalint + i(xx)
        Next xx
cumul_inter = totalint
MsgBox cumul_inter
End Function

3 réponses

Whismeril
Messages postés
17327
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
16 mai 2022
596
8 juil. 2017 à 23:34
Bonjour, merci ou s'il vous plait sont essentiels à toute demande car ces mots marquent la politesse élémentaire et montrent le respect que tout demandeur devrait avoir envers les bénévoles qui animent ce forum.

Merci donc de reformuler correctement votre question
0
pim8
Messages postés
11
Date d'inscription
samedi 8 juillet 2017
Statut
Membre
Dernière intervention
10 juillet 2017

Modifié le 9 juil. 2017 à 01:22
oui bien sur ,je m'excuse en fait j'étais stressé avec la programmation et j'ai pas fais attention
veuillez m'excuser
merci
0
pim8
Messages postés
11
Date d'inscription
samedi 8 juillet 2017
Statut
Membre
Dernière intervention
10 juillet 2017

9 juil. 2017 à 01:20
http://www.commentcamarche.net/forum/affich-34711405-programmation
Voila mes questions sur les autres forums , j'ai juste pas fait attention
merci
0
Whismeril
Messages postés
17327
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
16 mai 2022
596
9 juil. 2017 à 08:50
Poser ta question en triple et n'importe où, n'est pas non plus la bonne méthode.
Ta question concerne VBA, donc ni excel en tant que tel (lien que tu donnes), ni VB6 forum ou tu as posté ce triplon....

0
pim8
Messages postés
11
Date d'inscription
samedi 8 juillet 2017
Statut
Membre
Dernière intervention
10 juillet 2017

9 juil. 2017 à 10:46
je pense qu'il dont lié , déjà l'algo que je cherche c'est du vb6 , et je dois le programmer sur vba excel
0
vb95
Messages postés
2629
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
13 mai 2022
151 > pim8
Messages postés
11
Date d'inscription
samedi 8 juillet 2017
Statut
Membre
Dernière intervention
10 juillet 2017

9 juil. 2017 à 11:49
bonjour
Un algorithme ne sera jamais du VB 6 ( ou C++ ou Delphi ou etc.)
Tu confonds algorithme et langage de programmation
0
pim8
Messages postés
11
Date d'inscription
samedi 8 juillet 2017
Statut
Membre
Dernière intervention
10 juillet 2017
> vb95
Messages postés
2629
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
13 mai 2022

9 juil. 2017 à 12:03
bonjour
d'acc merci , est ce que vous pouvez m'aider !
0
Whismeril
Messages postés
17327
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
16 mai 2022
596
Modifié le 9 juil. 2017 à 16:10
Maintenant que Nhenri a modifié ta question, rendant enfin le code lisible, on peut commencer à y regarder.

ca marche pas

ça ne veut rien dire:
  • ça ne calcule pas comme tu veux?
  • ça plante? ou? quel est l'état des variables à ce moment?
  • autre? -> détails



Sur le fond, ReDim est gourmand en temps et en RAM, à plus forte raison Redim Preserve. Et comme tu connais la taille du tableau dès le début ça ne sert à rien.
On ne peut pas en VBA, déclarer la taille d'un tableau avec une variable, il faut faire un Redim et un seul dès le début à la bonne taille.
Dim a(), i(), c() As Double
ReDim a(0 To n), i(0 To n), c(0 To n) As Double

Et virer tous les autres ReDim.

Quand j'étais petit, la mer Morte n'était que malade.
George Burns
0
pim8
Messages postés
11
Date d'inscription
samedi 8 juillet 2017
Statut
Membre
Dernière intervention
10 juillet 2017

Modifié le 9 juil. 2017 à 16:44
d'accord merci
et pour le ça marche pas , le script ne calcule pas comme je veux.
j'essaie de programmer une fonction personnalisée qui calcule le cumul des intérêts d'un emprunt entre deux périodes
0
Whismeril
Messages postés
17327
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
16 mai 2022
596
9 juil. 2017 à 17:47
Et tu sais le faire à la main?
0
pim8
Messages postés
11
Date d'inscription
samedi 8 juillet 2017
Statut
Membre
Dernière intervention
10 juillet 2017

Modifié le 9 juil. 2017 à 22:38
oui, par exemple on a un un emprunt de 12000 sur une durée de 55 mois à un taux de 5.9%
le montant de l intérêt du premier mois est 12000*taux/12
du deuxième est le (12000-(mensualité-intérêt du premier mois))*taux/12
avec la mensualité=intérêt + amortissement
et amortissement= capital/durée de l'emprunt
et finalement le total d’intérêts que je cherche qui est la somme des intérêts dans la période.
dans cet exemple le total est 1679.05
0
Whismeril
Messages postés
17327
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
16 mai 2022
596 > pim8
Messages postés
11
Date d'inscription
samedi 8 juillet 2017
Statut
Membre
Dernière intervention
10 juillet 2017

Modifié le 9 juil. 2017 à 23:24
Dim a(), i(), c() As Double
ReDim a(0 To n), i(0 To n), c(0 To n) As Double
Dim xx As Integer


a(0) = Capital / n
i(0) = Capital * Taux 'pourquoi y'a pas / 12? et si taux est en % il faut aussi / 100 je pense
mensualite = i(0) + a(0)

c(0) = Capital
totalint = i(0)

For xx = 1 To n
            c(xx) = c(xx - 1) - a(xx - 1)
            i(xx) = c(xx) * Taux 'et là pareil?
            a(xx) = mensualite - i(xx)
            totalint = totalint + i(xx)
        Next xx
cumul_inter = totalint
MsgBox cumul_inter


je n'ai pas regardé plus loin pour l'instant.
0
pim8
Messages postés
11
Date d'inscription
samedi 8 juillet 2017
Statut
Membre
Dernière intervention
10 juillet 2017
> Whismeril
Messages postés
17327
Date d'inscription
mardi 11 mars 2003
Statut
Modérateur
Dernière intervention
16 mai 2022

9 juil. 2017 à 23:34
j'ai ajoutée (/12) mais c'est pire le montant de cumul a diminué !!!
pour le (/100) déjà l'insertion du taux se fait avec son pourcentage donc c'est comme si vous divisez sur 100
0