Numéro de facture +1

Bonsoir à tous,

Je recherche un moyen de générer un nouveau numéro de facture à chaque ouverture du classeur d'après le dernier numéro enregistré ou bien d'après la dernière facture émise (si plusieurs factures sont éditées successivement sans refermer le classeur), au format suivant:

Numéro de la dernière facture +1 / - (tiret) / mois en cours / année en cours

Le numéro de la dernière facture éditée se trouve à la dernière ligne d'une liste déjà au format (N°- MMAAAA) sur une feuille spécifique.

exemple :

232-052017

facture numéro 232, mai 2017

Merci pour votre aide.

Dul

Où est enregistré ce dernier n° ?

=GAUCHE(A1;CHERCHE("-";A1)-1)+1&"-"&DROITE("0"&MOIS(AUJOURDHUI());2)&ANNEE(AUJOURDHUI())
363num-facture.xlsx (8.23 Ko)

Bonjour,

Merci pour ta formule, elle fonctionne parfaitement.

Le dernier numéro se situe sur une autre feuille, à la dernière ligne d'une colonne. A chaque facture éditée le nouveau numéro vient s'inscrire à la suite des précédents. J'ai donc bricolé quelque chose, ça fonctionne, mais on peut sans doute faire plus simple:

Sur la feuille qui contient la liste j'ai récupéré le dernier numéro de la colonne dans la cellule H1 avec =Recherche("z";C:C)

Sur la feuille facture j'ai récupéré la valeur de H1 dans la cellule A75 (cachée) avec = 'Feuil Liste'!H1

J'ai appliqué ta formule à l'endroit où je souhaite voir le nouveau numéro en faisant référence à la cellule A 75.

Peut-être serait-il possible de n'avoir qu'une seule formule directement à l'endroit où doit apparaitre le nouveau numéro ...

Dul

dul a écrit :

Peut-être serait-il possible de n'avoir qu'une seule formule directement à l'endroit où doit apparaitre le nouveau numéro ...

Dans ce cas ...

=GAUCHE('Feuil Liste'!H1;CHERCHE("-";'Feuil Liste'!H1)-1)+1&"-"&DROITE("0"&MOIS(AUJOURDHUI());2)&ANNEE(AUJOURDHUI())

Bonjour,

Tout fonctionne, merci!

Mais le fait que le nouveau numéro soit instantanément disponible dans la facture rend possible d'en éditer plusieurs avec le même contenu ( le numéro s'incrémentant à chaque fois grâce à ta formule). Je suis donc passé par un bouton "Nouvelle Facture" et une macro pour effacer le contenu de la facture, récupérer dans la liste le dernier numéro, je bloque sur ta formule que je n'ai pas réussi à utiliser dans la macro. Voici le code ci-dessous.

Dul

[code]Sheets("Liste Factures").Select

Dim DerLig As Long

Dim DerValue As String

Dim NewNum As String

DerLig = Cells(65536, "C").End(xlUp).Row

DerValue = Cells(DerLig, "C")

Sheets("Facturation").Select

Range("B2").FormulaLocal = "=GAUCHE('DerValue';CHERCHE(" - ",'DerValue')-1)+1&" - "&DROITE("0"&MOIS(AUJOURDHUI()),2)&ANNEE(AUJOURDHUI())"

End Sub

/code]

Essaie

Range("B2").FormulaR1C1 = _
        "=LEFT(LOOKUP(""z"",'Feuil liste'!C[1]),SEARCH(""-"",LOOKUP(""z"",'Feuil liste'!C[1]))-1)+1&""-""&RIGHT(""0""&MONTH(TODAY()),2)&YEAR(TODAY())"

hé oui, en VBA c'est exclusivement en langue de Shakespeare

et

DerLig = Cells(65536, "C").End(xlUp).Row
DerValue = Cells(DerLig, "C")

devient dans ce cas inutile

Bonsoir,

Parfait, merci Beaucoup.

Une dernière question, le ""0"" juste après RIGHT permet d'ajouter un 0 lorsque les mois sont inférieurs à 10, mais que se passe t-il pour les mois d'octobre, novembre et décembre ? 010,011, 012 ? Ou est-ce que le 2 juste avant &YEAR(TODAY)), ou autre chose, permet d'afficher 10, 11, 12. Je ne sais pas comment tester sans attendre le premier octobre.

Range("B2").FormulaR1C1 = _

"=LEFT(LOOKUP(""z"",'Feuil liste'!C[1]),SEARCH(""-"",LOOKUP(""z"",'Feuil liste'!C[1]))-1)+1&""-""&RIGHT(""0""&MONTH(TODAY()),2)&YEAR(TODAY())"

Bonne soirée.

Dul

dul a écrit :

Une dernière question, le ""0"" juste après RIGHT permet d'ajouter un 0 lorsque les mois sont inférieurs à 10, mais que se passe t-il pour les mois d'octobre, novembre et décembre ? 010,011, 012 ? Ou est-ce que le 2 juste avant &YEAR(TODAY)), ou autre chose, permet d'afficher 10, 11, 12. Je ne sais pas comment tester sans attendre le premier octobre.

C'est exactement cela :

1 donnera 01

2 donnera 02

10 donnera 10

11 donnera 11

12 donnera 12

comme dans l'exemple ci-joint

Bonsoir,

Merci beaucoup pour ton retour d'explications et l'exemple bien contret en PJ.

Dul

un grand merci à vous deux

c'est génial ce forum je reviendrai

Content que tu y trouves des solutions

A bientôt

Rechercher des sujets similaires à "numero facture"