Bonjour les Développeurs , j'ai un petit problème en fait j'ai beau essayé mais je ne sais pas comment introduire les proratas dans ce code pour amortissement dégressif . Est ce que quelqu'un peut m'aider ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
Sub Btn_demarrer()
 
Dim montant As Variant     ' Montant de l'investissement supporté par l'entreprise
Dim duree_am As String   ' durée de l'amortissement
Dim tauxAmort As Double  ' tauxAmort calculé ou donné selon l'année en exercice
Dim coeff As Double      ' coeff appliqué selon la durée d'amortissement (n'est pas calculé)
Dim dateAchat As String    ' date d'acquisition du produit
Dim tauxAmortBase As Double
 
' Compteurs utilisés pour faire un retour à la ligne '
Dim cumul As Integer
Dim cumul2 As Integer
 
Dim temp As Integer  ' Variable utilisée pour stocker temporairement la durée d'amortissement
 
duree_am = InputBox("Durée d'amortissement ?", "Durée d'amortissement :")
 
 
temp = duree_am
 
If duree_am = 3 Or duree_am = 4 Then    ' Coeff => 1.25 si durée = 3 ou 4 ans
    coeff = 1.25
Else
If duree_am = 5 Or duree_am = 6 Then    ' Coeff => 1.75 si durée = 5 ou 6 ans
    coeff = 1.75
Else
    coeff = 2.25                        ' Coeff => 2.25 si durée > 6 ans
End If
End If
 
For i = 0 To duree_am - 1 ' 0 => année en cours
    If i = 0 Then
        Cells(5 + cumul, 5).Value = "N"  ' N => exercice 1ère année
    Else
        Cells(5 + cumul, 5).Value = "N + " & i & ""  ' années suivantes
    End If
    cumul = cumul + 1
Next
 
MsgBox "Le coefficient applicable est donc " & coeff & "."
 
montant = InputBox("Montant de l'immobilisation ?", "Montant de l'immobilisation :")
 
 
Cells(5, 6).Value = montant
 
For i = 0 To duree_am - 1    ' les calculs s’arrêtent à l'année qui précède la fin de l'amortissement
 
tauxAmort = coeff / duree_am
 
If i <> 0 Then
   temp = temp - 1
   tauxAmortBase = 1 / temp
   If tauxAmortBase > tauxAmort Then
        tauxAmort = tauxAmortBase
   End If
End If
 
    Cells(5 + cumul2, 11).Value = "1 / " & temp & ""
 
    Cells(5 + cumul2, 7).Value = tauxAmort  ' Affichage du tauxAmort d'amortissement
 
cumul2 = cumul2 + 1
Next
 
dateAchat = InputBox("Indiquez la date d'achat de l'immobilisation.", "date d'achat de l'immobilisation :")
 
 
Range("B5") = DateSerial(Split(dateAchat, "/")(2), Split(dateAchat, "/")(1), Split(dateAchat, "/")(0))
 
End Sub