Commande bouton
Bonjour ,
Je me permets de vous écrire ce message car je trouve des difficultés pour activer le bouton commande ,ce dernier permet de lancer des message box contenant les réponses relative au contenu des cases de B1:B5 .
Vous trouverez c joint le fichier excel .
Je vous prie de croire en mes salutation les plus respectueuses.
Bonjour,
à tester,
Private Sub CB_emprunt_click()
'declaration de variable
Dim CapitalEmprunte As Currency
Dim TauxAnnuel As Single
Dim EstAnnuel As Boolean
Dim TauxApplicable As Single
Dim NombredePeriode As Integer
Dim ReponseAnnuelMensuel As String
Dim I As Integer
Dim Iligne As Integer
' a faire nettoyer b1:b5
Range("B1:B5").Clear
'prompt := "Sample", type := 8
'initialisation
CapitalEmprunte = Application.InputBox("Quel est le montant du capital emprunté?", Type:=1)
Feuil1.Range("B1") = CapitalEmprunte
'a faire gestion du taux annuel
TauxAnnuel = Application.InputBox("Quel est le montant du capital emprunté?", Type:=1)
Feuil1.Range("B2") = TauxAnnuel
ReponseAnnuelMensuel = MsgBox("le Taux est-il Annuel?", vbYesNo)
If ReponseAnnuelMensuel = vbYes Then
EstAnnuel = True
Feuil1.Range("B3") = ("Annuel")
TauxApplicable = TauxAnnuel
Else
EstAnnuel = False
Range("B3") = "Mensuel"
TauxApplicable = TauxAnnuel / 12
End If
Range("b4") = TauxApplicable
'a faire gestion du taux applicable
NombredePeriode = CInt(Application.InputBox("Quel est le nombre de Periode?"))
Feuil1.Range("B5") = NombredePeriode
' a faire la ligne pour initialiser le tableau
Iligne = 8
Feuil1.Range("b" & Iligne) = 1
'completer le reste du tableau
For I = 2 To NombredePeriode
Iligne = I + 7
Feuil1.Range("b" & Iligne) = I
Next I
End Sub
Bonjour,
Je vous remercie pour votre aide le code pour les messages box marche bien ,cependant j'ai un autre problème, en gros je veux faire un programme qui sert d'une part a faire entrer les données via les messages box et qui peuvent être visible automatiquement sur le tableau en fonction des formules qui correspondent a chaque cases de la ligne 8 .
Je vous remercie d'avance de votre attention.
Bonjour,
Tout en haut du module colles cette ligne :
Option Explicit
ensuite, lances ta macro et regardes ce qui se passe !
Bonjour,
Merci pour votre aide , par contre j'arrive pas a avoir les bons montant et calcul dans le tableau en fonction de mes données .
re,
à tester,
Private Sub CB_emprunt_click()
'declaration de variable
Dim CapitalEmprunte As Currency
Dim TauxAnnuel As Single
Dim EstAnnuel As Boolean
Dim TauxApplicable As Single
Dim MontantRemboursement As Single
Dim InteretPeriode As Single
Dim CapitalResantDuFinDePeriode As Single
Dim MontantPrincipal As Single
Dim NombredePeriode As Integer
Dim ReponseAnnuelMensuel As String
Dim I As Integer
Dim Iligne As Integer
' a faire nettoyer b1:b5
Range("B1:B5").Clear
'prompt := "Sample", type := 8
'initialisation
CapitalEmprunte = Application.InputBox("Quel est le montant du capital emprunté?", Type:=1)
Feuil1.Range("B1") = CapitalEmprunte
'a faire gestion du taux annuel
TauxAnnuel = Application.InputBox("Quel est le Taux annuel?", Type:=1)
Feuil1.Range("B2") = TauxAnnuel
ReponseAnnuelMensuel = MsgBox("les Remboursements sont-ils annuel ?", vbYesNo)
If ReponseAnnuelMensuel = vbYes Then
EstAnnuel = True
Feuil1.Range("B3") = ("Annuel")
TauxApplicable = TauxAnnuel
Else
EstAnnuel = False
Range("B3") = "Mensuel"
TauxApplicable = TauxAnnuel / 12
End If
Range("b4") = TauxApplicable
'a faire gestion du taux applicable
NombredePeriode = CInt(Application.InputBox("Quel est le nombre de Periode?"))
Feuil1.Range("B5") = NombredePeriode
' a faire la ligne pour initialiser le tableau
Iligne = 9
Feuil1.Range("b" & Iligne) = 1
Feuil1.Range("c" & Iligne) = CapitalEmprunte
InteretPeriode = Feuil1.Range("c" & Iligne) * TauxApplicable 'Interet
Feuil1.Range("D" & Iligne) = InteretPeriode
MontantRemboursement = CapitalEmprunte * TauxApplicable / (1 - (1 + TauxApplicable) ^ (-NombredePeriode))
Feuil1.Range("F" & Iligne) = MontantRemboursement
MontantPrincipal = MontantRemboursement - InteretPeriode
Feuil1.Range("E" & Iligne) = MontantPrincipal
CapitalResantDuFinDePeriode = Feuil1.Range("c" & Iligne) - MontantPrincipal
Feuil1.Range("G" & Iligne) = CapitalResantDuFinDePeriode
'completer le reste du tableau
For I = 2 To NombredePeriode
Iligne = I + 8
Feuil1.Range("b" & Iligne) = I
Feuil1.Range("c" & Iligne) = Feuil1.Range("G" & Iligne - 1)
InteretPeriode = Feuil1.Range("c" & Iligne) * TauxApplicable 'Interet
Feuil1.Range("D" & Iligne) = InteretPeriode
Feuil1.Range("E" & Iligne) = MontantPrincipal
Feuil1.Range("F" & Iligne) = MontantRemboursement
MontantPrincipal = MontantRemboursement - InteretPeriode
CapitalResantDuFinDePeriode = Feuil1.Range("c" & Iligne) - MontantPrincipal
Feuil1.Range("G" & Iligne) = CapitalResantDuFinDePeriode
Next I
End Sub
Bonjour,
Avec les fonctions financière d'Excel :
Sub Emprunt()
Dim CapitalEmprunte As Currency
Dim TauxAnnuel As Single
Dim NombredePeriode As Integer
Dim I As Integer
Range("B1:B5").Clear
'initialisation
CapitalEmprunte = Application.InputBox("Quel est le montant du capital emprunté?", Type:=1)
Feuil1.Range("B1") = CapitalEmprunte
'a faire gestion du taux annuel
TauxAnnuel = Application.InputBox("Quel est le Taux annuel ?", Type:=1)
Feuil1.Range("B2") = TauxAnnuel
'a faire gestion du taux applicable
NombredePeriode = CInt(Application.InputBox("Quel est le nombre de Periode?"))
Feuil1.Range("B5") = NombredePeriode
For I = 1 To NombredePeriode
Cells(I + 8, 2).Value = I
Cells(I + 8, 3).Value = -Application.PPmt(TauxAnnuel / 12, I, NombredePeriode, CapitalEmprunte) + Application.Pmt(TauxAnnuel / 12, NombredePeriode, -CapitalEmprunte) * (1 - (1 + TauxAnnuel / 12) ^ -(NombredePeriode - I)) / (TauxAnnuel / 12)
Cells(I + 8, 4).Value = Application.IPmt(TauxAnnuel / 12, I, NombredePeriode, -CapitalEmprunte)
Cells(I + 8, 5).Value = -Application.PPmt(TauxAnnuel / 12, I, NombredePeriode, CapitalEmprunte)
Cells(I + 8, 6).Value = Application.Pmt(TauxAnnuel / 12, NombredePeriode, -CapitalEmprunte)
Cells(I + 8, 7).Value = Application.Pmt(TauxAnnuel / 12, NombredePeriode, -CapitalEmprunte) * (1 - (1 + TauxAnnuel / 12) ^ -(NombredePeriode - I)) / (TauxAnnuel / 12)
Next I
End Sub
Bonjour ,
Ce projet consiste à calculer et rédiger un tableau d’amortissement de l’emprunt avec des remboursements constants « annuité constante "
La boite de dialogue marche bien mon programme aussi sauf un tout petit détail, concernant la boite de dialogue quand on opte pour "un remboursement annuel comme réponse " le calcul des intérêts se fait en remboursement mensuel en divisant le taux applicable / 12 ,or qu'il ne doit pas être ainsi .
Vous trouverez ci-joint le fichier ,je vous remercie d'avance de votre attention .
Bonjour,
Remplacer "TauxAnnuel" par "TauxApplicable", ce qui est fait là dessous :
For I = 1 To NombredePeriode
Cells(I + 8, 2).Value = I
Cells(I + 8, 3).Value = -Application.PPmt(TauxApplicable, I, NombredePeriode, CapitalEmprunte) + Application.Pmt(TauxApplicable, NombredePeriode, -CapitalEmprunte) * (1 - (1 + TauxApplicable) ^ -(NombredePeriode - I)) / TauxApplicable
Cells(I + 8, 4).Value = Application.IPmt(TauxApplicable, I, NombredePeriode, -CapitalEmprunte)
Cells(I + 8, 5).Value = -Application.PPmt(TauxApplicable, I, NombredePeriode, CapitalEmprunte)
Cells(I + 8, 6).Value = Application.Pmt(TauxApplicable, NombredePeriode, -CapitalEmprunte)
Cells(I + 8, 7).Value = Application.Pmt(TauxApplicable, NombredePeriode, -CapitalEmprunte) * (1 - (1 + TauxApplicable) ^ -(NombredePeriode - I)) / TauxApplicable
Next I