XL 2019 Création d'un échéancier dynamique

Praveena

XLDnaute Nouveau
Bonjour,

Mon fichier Excel permet de suivre les activités de débit et crédit d'un compte bancaire. Il y a plusieurs débits récurrents par mois (téléphonie, internet,...etc.).
Je pensais donc créer un User Forms pour faire un sorte d'échéanciers qui contiendrait chaque jours de prélèvement, le montant.
Or, je voulais savoir si c'était possible que quand la date d'échéance passe, la ligne de prélèvement soit automatiquement inséré dans le tableau de suivi? (que je ne peux pas modifier la forme)?

Par exemple, si on paye l'abonnement internet tous les 10 du mois, passé ce délai, une ligne se créée automatiquement à la suite dans le tableau pour indiqué que ça a été prélevé.
Je vous joins le fichier anonymisé pour la vision du tableau.

Je vous remercie de votre attention
Praveena.
 

Pièces jointes

  • BANQUE CEIFD - fichier anonymisé.xlsx
    210.2 KB · Affichages: 29

GALOUGALOU

XLDnaute Accro
re Praveena bonjour le forum
une solution en créant une feuille de stockage des informations qui seront répétées tous les mois.
dans l'évenement workbook, à l'ouverture, un test sur la date, et si celle ci est atteinte, déclenchement d'une macro.
VB:
Sub auto_téléphonie()
Dim wb As Workbook, ws As Worksheet, ws2 As Worksheet
Dim i As Integer, lig As Integer, lig2 As Integer
Set wb = ThisWorkbook
    Set ws = wb.Worksheets("Suivi")
      Set ws2 = wb.Worksheets("Auto")
        lig = ws.Cells(Rows.Count, 3).End(xlUp).Row + 1
        
 ' test sur la date si mois différent éxécution macro
If Month(ws2.Cells(2, 1)) <> Month(Date - 10) Then
 ws.Cells(lig, 3) = ws2.Cells(2, 3)
  ws.Cells(lig, 4) = ws2.Cells(2, 4)
   ws.Cells(lig, 5) = ws2.Cells(2, 5)
    ws.Cells(lig, 6) = ws2.Cells(2, 6)
     ws.Cells(lig, 9) = ws2.Cells(2, 9)
      ws.Cells(lig, 10) = ws2.Cells(2, 10)
      'pour neutraliser la macro jusqu'au 10 du mois suivant
       ws2.Cells(2, 1) = Date
        End If
    
End Sub
créer une macro par évenement.
d'autre explication dans le classeur dans la feuille "auto"
cdt
galougalou
 

Pièces jointes

  • Copie de BANQUE CEIFD - fichier anonymisé-1.xlsm
    234.3 KB · Affichages: 21

ChTi160

XLDnaute Barbatruc
Bonsoir le Fil
galougalou
J'ai eu une erreur a l'ouverture de ton fichier!
j'ai modifié la troisième ligne du code voir ci-dessous
En ajoutant la référence à la feuille ws pour le Rows.count
soit :
Code:
ws.Rows.Count
VB:
 Set ws = wb.Worksheets("Suivi")
      Set ws2 = wb.Worksheets("Auto")
        lig = ws.Cells(ws.Rows.Count, 3).End(xlUp).Row + 1
Bonne fin de journée
jean marie
 

JM27

XLDnaute Barbatruc
Bonjour
A tester
Mais comme la forme n'est pas conforme à ton fichier cela ne le fera pas! :p
C'est vieux et je ne sais plus si cela marche , mais cela devrait le faire
 

Pièces jointes

  • Mon Compte Bancaire V4.xlsm
    172.8 KB · Affichages: 28
Dernière édition:

Praveena

XLDnaute Nouveau
re Praveena bonjour le forum
une solution en créant une feuille de stockage des informations qui seront répétées tous les mois.
dans l'évenement workbook, à l'ouverture, un test sur la date, et si celle ci est atteinte, déclenchement d'une macro.
VB:
Sub auto_téléphonie()
Dim wb As Workbook, ws As Worksheet, ws2 As Worksheet
Dim i As Integer, lig As Integer, lig2 As Integer
Set wb = ThisWorkbook
    Set ws = wb.Worksheets("Suivi")
      Set ws2 = wb.Worksheets("Auto")
        lig = ws.Cells(Rows.Count, 3).End(xlUp).Row + 1
       
 ' test sur la date si mois différent éxécution macro
If Month(ws2.Cells(2, 1)) <> Month(Date - 10) Then
 ws.Cells(lig, 3) = ws2.Cells(2, 3)
  ws.Cells(lig, 4) = ws2.Cells(2, 4)
   ws.Cells(lig, 5) = ws2.Cells(2, 5)
    ws.Cells(lig, 6) = ws2.Cells(2, 6)
     ws.Cells(lig, 9) = ws2.Cells(2, 9)
      ws.Cells(lig, 10) = ws2.Cells(2, 10)
      'pour neutraliser la macro jusqu'au 10 du mois suivant
       ws2.Cells(2, 1) = Date
        End If
   
End Sub
créer une macro par évenement.
d'autre explication dans le classeur dans la feuille "auto"
cdt
galougalou

Bonjour GALOUGALOU,

Donc chaque fois que j'ajoute une nouvelle échéance, je dois changer le code avec la cellule correspondante et créer une macro le reportant dans le tableau principal?

Merci
Praveena
 

Praveena

XLDnaute Nouveau
Bonjour
A tester
Mais comme la forme n'est pas conforme à ton fichier cela ne le fera pas! :p
C'est vieux et je ne sais plus si cela marche , mais cela devrait le faire
Bonjour,

J'aime bien le concept qui est pratique!
Mais du coup, dans ton fichier, cela est ajouté automatiquement dans tous les feuilles ou il faut que la date soit passé pour qu'il s'ajoute?

Merci
Praveena
 

JM27

XLDnaute Barbatruc
bonjour
dès que la date est dépassée , on ajoute une ligne dans la feuille du mois concernée. cela se fait
automatiquement à l'ouverture du fichier . et l'on ajoute une ligne dans la BaseDeDonnées ( utile pour le TCD)
et cela que ce soit en crédit récurrents ou en débits récurrents.
 

Praveena

XLDnaute Nouveau
Du coup, ça ne peut se faire que si on a une page dédié au mois et non sur une seule feuille?
bonjour
dès que la date est dépassée , on ajoute une ligne dans la feuille du mois concernée. cela se fait
automatiquement à l'ouverture du fichier . et l'on ajoute une ligne dans la BaseDeDonnées ( utile pour le TCD)
et cela que ce soit en crédit récurrents ou en débits récurrents.
 

JM27

XLDnaute Barbatruc
Bonjour
On peut éventuellement supprimer les feuilles des mois ( et modifier la macro en conséquence) et garder la
feuille BaseDeDonnée( mais je n'en vois pas l'intérêt ( qui peut le plus peut le moins)
Mais cela me parait bien plus lisible avec une feuille par mois.( de plus je pense que les relevés papier de la banque sont par mois.
sachant qu'au changement d'année les onglets changent que nom via le bouton valider le changement d'année.
Cette feuille regroupe toutes les opérations (sauf celle entre comptes) si le compte courant n'est pas concerné.
nota: il serait bien de lire le mode d'emploi, certaines réponses à tes questions y figurent. ( ce n'est pas exhaustif , je n'ai pas tout indiqué)
 

Statistiques des forums

Discussions
302 248
Messages
2 001 847
Membres
215 340
dernier inscrit
Pietro Cavallo