Boostez vos compétences Excel avec notre communauté !
Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force.
Apprenez, échangez, progressez – et tout ça gratuitement !
👉 Inscrivez-vous maintenant !
j'ai un n° de facture (070101) que je voudrais qui se modifie à chaque nouvelle facture
07 invariable
01 modifieé selon le mois
01 +1 à chaque nouvelle facture
C'est une question qui revient souvent.
La difficulté réside dans le choix du "moment" ou on fait tourner la numérotation.
Si on fait tourner la numérotation à chaque ouverture de classeur, tu es obligé de fermer le classeur à chaque fois entre 2 factures et ce n'est pas forcément l'idéal.
De plus si tu veux seulement consulter une facture ultérieurement tu vas changer le numéro et ça va rapidement être une vrai salade...
Les macros suivantes donnent un numéro de facture à chaque impression à condition qu'il n'y ait pas déjà un numéro ! (car s'il ya a déjà un numéro on considère que tu réédites la même facture.
Si par contre la case N° de facture est vide, la macro considère qu'il s'agit d'une nouvelle facture et le n° augmente de 1.
Ces 2 macros sont à coller dans le module "ThisWorkbook"
Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
If Range("FactureNo") = "" Then Range("FactureNo") = NumFact
End Sub
Private Function NumFact()
pref = "zk" & Right(Year(Date), 2) & Format(Month(Date), "00")
sFich = pref & "???.dat"
z = Dir(sFich)
If z = "" Then
Open pref & "001.dat" For Random As #1
Close #1
End If
z = Dir(sFich)
NumInc = Format(CInt(Mid(z, 7, 3)) + 1, "000")
Name z As Left(z, 6) & NumInc & Right(z, 4)
NumFact = Mid(z, 3, 7)
End Function
Pour que la macro puisse fonctionner il faut que la cellule dans laquelle le N° va s'inscrire soit Nommée (Insertion/Nom/Définir) FactureNo
Tu peux par exemple insérer cette macro dans un classeur modèle (*.xlt) et enregistrer simultanément la facture sous un autre nom au moment de l'impression...)
La numérotation comporte 7 chiffres p.e. : 0601001
2 pour l'année (il faut que le format de celule soit Personnalisé0000000 sinon le premier zéro est invisible
2 pour le mois
3 de 001 à 999
Nota: la macro crée dans le répertoire de travail un fichier "zk???????.dat" de zéro octet qui gère la numérotation...
A+
- Navigue sans publicité - Accède à Cléa, notre assistante IA experte Excel... et pas que... - Profite de fonctionnalités exclusives Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel. Je deviens Supporter XLD