IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Tableau d'amortissement VBA


Sujet :

Macros et VBA Excel

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Août 2012
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2012
    Messages : 48
    Par défaut Tableau d'amortissement VBA
    Bonjour à tous,

    Je souhaite créer un tableau d'amortissement en VBA (type actuariel, c'est-à-dire que l'amortissement doit être recalculé à la fin de chaque mois) et je me retrouve avec le code suivant (et une erreur de syntaxe avec la ligne en gras) :

    avec C11 : date de valeur (début de l'amortissement)
    C12 : date d'échéance (fin de l'amortissement)

    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
    Sub Amortissement()
    i = 0
    
    With Sheets("liste des opérations")
    
    
    Set plage_amort = Range(.[A8], .[A8].End(xlDown))
    
    'demander à lutilisateur le numéro dopération à amortir
    operation = InputBox("Veuillez entrer le numéro d'opération à amortir", "Amortissements")
    
    'vérification de lexistence du numéro dans la liste des opérations disponibles
    For Each cell In plage_amort
            If cell.FormulaR1C1 = operation Then i = i + 1
    Next cell
    
            If i = 0 Then MsgBox ("Cette opération n'existe pas")
    
            If i <> 0 Then
            Sheets("tableau d'amortissement").Select
            Range("C5").Select
            ActiveCell.FormulaR1C1 = operation
    
        With Sheets("tableau d'amortissement")
        .[B16].FormulaR1C1 = .[C11]
    
        'calculer le nombre de mois entre la date déchéance et la date de valeur
        compteur = (.[C12] - .[C11])/30
    
        'commencer léchéancier à la cellule B17 jusqua echeance
        For j = 17 To compteur
        .[B&j] = [date(year(B&(j-1)),month(B&(j-1))+1,Day(B&(j-1))]
        Next j
        End With
        
    End If
    
    End With
    
    End Sub

    J'obtiens une erreur type 424, il n'est pas possible d'employer une variable j dans ce type de formule ?

    Par ailleurs, ma seconde question est de savoir s'il est possible de faire en sorte de distinguer les mois à 31 et 30 jours; car mon code ne fait qu'incrémenter d'un mois la date d'arrêté d'amortissement (la formule de calcul est dans une autre cellule et n'entre pas dans le code VBA) mais ne prend pas en compte les jours exacts et ne prend pas en compte non plus que la date d'échéance puisse être un jour du mois quelconque (le code s'arrête à la fin du mois en question).
    Je vous laisse le fichier en pièce jointe.

    D'avance merci à tous !
    Fichiers attachés Fichiers attachés

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-MAC 2011] Tableau d'amortissement VBA
    Par ti_mouton dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 30/10/2014, 22h04
  2. Tableau Amortissements VBA
    Par VBABeginners dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 10/02/2010, 01h46
  3. [VBA-E] Graphique suite à un tableau d'amortissement
    Par iupien78 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 14/02/2007, 15h03
  4. [VBA-E]créer un tableau Excel en vba
    Par DonKnacki dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 19/01/2006, 16h06
  5. Calul d'amortissements VBA
    Par priest69 dans le forum Access
    Réponses: 7
    Dernier message: 21/11/2005, 09h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo