Incrémentation d'un numéro de dossier à partir d'un exercice comptable

Bonjour à tous et à toutes ,

Je suis entrain de développer une application de gestion des comptes en utilisant le le langage VBA , étant donné que je suis novice dans ce domaine , je vous sollicite si vous avez une réponse à cette question : l'idée c'est d'avoir un numéro de dossier qui va être crée à partir de l'exercice comptable sous la forme suivante : 20190002..

<<Texte sur 8 caractères, il est créé en automatique à partir de

l’exercice comptable et d’une numérotation séquentielle. Ainsi en 2019, le

premier dossier sera numéroté 20190001 puis 20190002... en 2018 la même chose ainsi de suite >>

Dans l'attente de vos réponse , Merci .

Bonjour Ayarach, bonjour le forum,

J'ai considéré que les numéros de dossier étaient au format texte et se trouvaient dans la colonne A, tu adapteras :

Sub Macro1()
Dim O As Worksheet 'déclare la variable O (Onglet)
Dim DL As Integer 'déclare la variable DL (Dernière Ligne)
Dim Max As Long 'déclare la variable Max
Dim I As Integer 'déclare la variable I (Incrément)

Set O = Worksheets("Feuil1") 'définit l'onglet O (à adapter)
DL = O.Cells(Application.Rows.Count, "A").End(xlUp).Row 'définit la dernière ligne éditée DL de la colonne A de l'onglet O (à adapter)
For I = 1 To DL 'boucle sur toutes les lignes I de 1 à DL
    'si la valeur de la cellule ligne I colonne A convertie en entier long est supérieure à Max (qui au départ vaut 0),Max devient la valeur de cette cellule
    If CLng(Cells(I, "A").Value) > Max Then Max = Cells(I, "A").Value
Next I 'prochaine ligne de la boucle
O.Cells(DL + 1, "A") = "'" & Max + 1 'renvoie dans la cellule ligne DL+1 colonne A le numéro incrémenté au format texte
End Sub

Il te faudra taper manuellement uniquement le premier numéro de chaque nouvel exercice...

Bonsoir , je vous remercie de votre réponse , par contre ça n'a pas marché , (je ne sais pas pourquoi!)

Juste pour rappel

je voudrais avoir un numéro de dossier qui sera incrémenté , lors d'enregistrement d'un nouveau dossier , sous la forme suivante : 201900001; 201900002;201800001 ainsi de suite , l'incrémentation est à partir de l'exercice comptable , voici ce qui j'ai fait mais j'y n'arrive pas!!!!

MERCI

i = 1

Do While Cells(i, 1) <> ""

Cells(i, 1).Offset(1, 1).Select

i = i + 1

Loop

ActiveCell.Value = FORMULAIRE.EXERCICECOMPTBLE.Value ' L'exercice comptable '

ActiveCell.Offset(0, 1).Value = FORMULAIRE.TextBox3.Value 'L'Ecrire la désignation lors de la saisie de données '

ActiveCell.Offset(0, 2).Value = FORMULAIRE.TextBox4.Value 'Ecrire la valeur de l'emprunt en numérique '

ActiveCell.Offset(0, 3).Value = FORMULAIRE.TextBox5.Value 'Indiquer la durée d'amortissement '

ActiveCell.Offset(0, 4).Value = FORMULAIRE.ComboBox_mode.Value 'Indiquer le mode d'amortissment : amortissement constant ou par annuité constante '

ActiveCell.Offset(0, 5).Value = FORMULAIRE.TextBox7.Value ' Saisir le taux annuel d'amrortissment de l'emprunt '

If ActiveCell.Offset(-1, -1).Value = "ID" Then

ActiveCell.Offset(0, 1).Value = Range(B1) & ("00001")

End If

Unload FORMULAIRE

MsgBox ("L'enregistrment est effectué avec succés!")

Re,

La règle d'or en VBA c'est déviter autant que possible les Select / Activate qui ne font que ralentir l'exécution du code et sont source de nombreux bugs. Le code que je proposais imaginais que les numéros se trouvaient dans la colonne A. Pour ne pas perdre plus de temps, plutôt qu'un code, envoie-nous donc le fichier...

Bonjour ,

Je vous remercie de vos réponses en fait j'ai trouvé la solution , pour l'incrémentation , par contre je n'arrive pas à modifier ou à supprimer à partir de l'identifiant j'ai appliqué le code mais ça ne marche pas avec moi ; je vais m'expliquer

l'idée est de supprimer u dossier à partir de son ID et de modifier à partir de son ID

je serai reconnaissante si vous pourriez m'aider

Je partage le fichier

Re,

Est-ce que dans le champ Tb_Taux tu peux rentrer des nombre décimaux ou bien tu ne rentres que des nombres entiers ?

Il me semble que les numéros devaient se faire par rapport à l'année de l'exercice comptable, ce n'est pas ce que fait ton code. Si tu en es à 20190058 et que tu tapes 2020 comme exercice comptable, le numéro sera 20200059 et pas 20200001 comme tu semblais le souhaiter !?...

Merci de votre retours ;

En fait oui vous avez tout à fait raison , c'est bon j'ai résolu le problème pour l'incrémentation du numéro de dossiers , ce que je voulais savoir si vous pourriez regarder la boucle " modifier l'emprunt " et suppression car j'ai appliqué le code, d'après ce que je sache mais je ne sais pas pourquoi ça ne marche pas .

MERCI:)

Re,

J'ai presque fini mais tu ne réponds pas à ma question du post précédent : nombres décimaux ou nombres entier dans Tb_Taux ?

c'est Nombre décimaux

merci beaucoup

Bonjour Thau thème

Je suis toujours en attente de votre réponse .

MERCI

Bonjour Arayach,

Je suis désolé mais je suis en plein déménagement et peu disponible. Je n'ai eu le temps ni de finir, ni de tester et je sais qu'il reste encore quelques bugs car j'ai eu l'idée imbécile de vouloir refaire à ma sauce. je t'envoie ce qui est fait et tu regardes...

11ayarach-ep-v01.xlsm (95.56 Ko)

Merci beaucoup , c'est gentil de votre part

Bonne soirée

Re,

Dis-moi ce qui va, ce qui va pas et j'essaierai de corriger, si j'ai le temps...

Bonsoir Thauthème

Tout d'abord je vous remercie de votre travail , c'est très intéressant , m'a beaucoup inspiré , du coup j'ai pu modifier mon application

par contre je sollicite votre aide pour le calcul du plan d'amortissement le principe est le suivant

Pouvoir calculer un plan d'amortissement à partir de son numéro de dossier ( année , montant restant dû, intérêt, amortissement , annuité ) ,

voici ce qui j'ai commencé à faire

im Cb_Mode As Integer 'Mode amortissement constant ou annuité constante

Dim annuité As Currency 'Annuité sera calcul à partir de la valeur empruntée , taux , durée et mode

Dim amortissment As Currency 'amortissement sera calculer à partir de la durée et la valeur empruntée

Dim intéret As Currency 'intérêt bancaire

Dim Restantdû As Currency 'Montant restant dû après chque échancier

With ThisWorkbook.Sheets("Feuil2")

calcul = InputBox("Veuillez saisir le numéro de dossier pour pouvoir procéder au calcul ")

If Range("A" & I).Value = calcul Then

mais je n'arrive pas à trouver , puisque je suis novice et cela dépasse mes compétences en VBA .

Dans l'attente de votre réponse , merci

Re,

Si tu as modifié, renvoie ta version... Mais, encore une fois, en plein déménagement, je ne te garantis rien...

Bonjour , Thau thème je vous remercie de votre réponse .

Puis -je vous envoyé ma version sur votre adresse mail SVP?

J'en serai reconnaissante .

MERCI

Rechercher des sujets similaires à "incrementation numero dossier partir exercice comptable"