numérotation automatique

piskely

XLDnaute Junior
Bonjour,
bah mon probléme est que je veux ajouter automatiquement à feuille une numérotation.
mon format de numéro est "FA2015/318".
donc si j'ai en A1=FA2015/318
je voudrai avoir automatiquement en A2 "FA2015/319"
merci d'avance
 

Dranreb

XLDnaute Barbatruc
Re : numérotation automatique

Bonjour.
ben si comme vous dites le format de nombre personnalisé de votre colonne A est: "FA2015/"000
et si en A1 vous avez la valeur 318 et non pas le texte "FA2015/318", (les formats de nombres ne sont pas appliqués sur du texte), il suffit d'ajouter partout 1 à la cellule d'au dessus.
Par contre si vous n'avez pas de format particulier sur la colonne A mais un texte de 7 caractère suivis de 3 chiffres à incrémenter en A1, en A2 :
Code:
=GAUCHE(A1;7)&TEXTE(DROITE(A1;3)+1;"000")
 
Dernière édition:

piskely

XLDnaute Junior
Re : numérotation automatique

Alors je reviens avec un fichier à l'appui.
Donc comment dois-je procéder en sachant que je veux creer une macro qui fera un enregistrement des éléments de la facture dans ma BD tout en automatisant à l'ouverture mon numéro de la facture. je rappel que mon format de facture est "FA2015/001"
merci à vous
 

Pièces jointes

  • test.xlsx
    17.4 KB · Affichages: 39
  • test.xlsx
    17.4 KB · Affichages: 31

Dranreb

XLDnaute Barbatruc
Re : numérotation automatique

C'est complètement autre chose ça.
Ni votre cellule A18 de la feuille facture ni la colonne A de votre feuille BD_FACTURE n'ont de format.
Je suppose que c'est donc bien du texte que vous voulez y mettre plutôt qu'un numéro de facture.
Dommage. Si elles avaient le format de nombre personnalisé "FA"0000"/"000 ce serait plus simple: il suffirait d'y envoyer 1000 fois l'année + le numéro. Pour du texte ceci marche:
VB:
Sub test()
Dim NOrd As Long
NOrd = 1
MsgBox Format(Year(Date) * 1000 + NOrd, "FA0000/000")
End Sub
Et dans l'autre sens, cela aussi:
VB:
Sub test2()
Dim NOrd As Long
NOrd = Right$("FA2015/002", 3)
MsgBox NOrd
End Sub
 

piskely

XLDnaute Junior
Re : numérotation automatique

Dranreb
Merci de votre rapidité.
Vous voudriez bien me dire comment je fais pour le mettre en VBA?
ou me le mettre en fichier?
PS: je prendrai bien votre première suggestion
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : numérotation automatique

Je vous ai donné les instructions vba pour établir cette identification sous forme de texte.
Pour l'établir sous forme de nombre, l'expression à affecter à la propriété Value d'une cellule serait simplement 1000 * Année + Numéro
Pour passer au numéro suivant il suffirait d'y ajouter 1. Mais peut être vérifier si 1000 * Année + 1, qu'il faudrait alors prendre, ne serait pas supérieur à ça, auquel cas le numéro à incrémenter serait de l'année précédente. Le tout c'est donc de commencer par décider si vous voulez que la représentation interne de cette identification de facture soit sous forme de nombre ou de texte. C'est très important. Et cesser d'employer le mot format à tort et à travers. Car ce ne sont pas les données qui ont un format. Ce sont les cellules. Les données elle ont une nature, un type de donnée.
 
Dernière édition:

piskely

XLDnaute Junior
Re : numérotation automatique

lorsque je copie votre code et que je le colle en VBA j'ai l'image en capture alors que je veux avoir ceci dans ma cellule A18. Capture.PNG
 

Pièces jointes

  • Capture.PNG
    Capture.PNG
    16.9 KB · Affichages: 39

Dranreb

XLDnaute Barbatruc
Re : numérotation automatique

Normal, c'était juste une MsgBox pour montrer que l'expression donnait le résultat souhaité.
Pour l'affecter à la cellule A18 vous pouvez faire :
VB:
Feuil1.[A18].Value = Format(Year(Date) * 1000 + NOrd, "FA0000/000")
ou bien :
VB:
Feuil1.[A18].Value = Year(Date) * 1000 + NOrd
Selon que vous aurez décidé que ce serait un texte ou un nombre.
 

Discussions similaires

Statistiques des forums

Discussions
312 092
Messages
2 085 216
Membres
102 823
dernier inscrit
Lyrix