Question pour mon travail

jean@alexandredenis

XLDnaute Nouveau
Bonjour je suis age de 16 ans je suis entrain de fair un system de facturation pour mon travail dans un magasin d'informatique.jai un mechant probleme jai une place que jai marquer facture no: mes apres le : je ne sais pas comment fair pour que chaque fois que je fait une facture je nait pas besoin de mettre un numero 1.2.3.4
je voudrais que le numero de la facture se chage toute seule mes je ne sais pas comment faire si vous pouver maider sa serait tres plaisant.

merci davance.

Jean-Alexandre denis B)
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonjour Jean-Alexandre, le Forum

Voici un code qui fear ce que tu souhaites faire, avec les ajustements adéquates indiqués :

Sub IncrementationFactureNumero()
Dim NumberInvoiceNumber As Integer
Dim RangeInvoiceNumber As Range
Dim StringInvoiceNumber As String


Set RangeInvoiceNumber = Sheets('Feuil1').Range('E5') ' A ADAPTER

StringInvoiceNumber = 'Facture No:'
' A ADAPTER

With RangeInvoiceNumber 'Si la cellule est vide (Première Facture)
If .Value = '' Then
.Value = StringInvoiceNumber & ' ' & Format(0, '0000')
End If
End With


NumberInvoiceNumber = Val(Mid(RangeInvoiceNumber, Len(StringInvoiceNumber) + 1))
NumberInvoiceNumber = NumberInvoiceNumber + 1
RangeInvoiceNumber = StringInvoiceNumber & ' ' & Format(NumberInvoiceNumber, '0000')


End Sub



Bonne Journée
@+Thierry
 

Eric C

XLDnaute Barbatruc
Bonjour le forum
Bonjour jean@alexandredenis

Une chose toute simple dans ThisWorkbook, tu places ce code :

Code:
Private Sub Workbook_Open()
Dim Compteur As Integer
Compteur = Range('A1').Value
Range('A1').Value = Compteur + 1
End Sub

A1 étant à adapter à la cell qui contient ton N° de facture. A la création, tu mets 1 puis à chaque fois que tu ouvriras ton fichier, la cellule sera incrémentée d'une unité.
Bon dimanche à toutes & à tous ;)
 

Eric C

XLDnaute Barbatruc
Re le forum
Re bonjour jean@alexandredenis, bonjour Thierry

Et bing au pied du lit.... Même pas mal. Waouh, tu as sorti la grande artillerie.... :)

Bonne journée moi je pars bosser.. ;)

Ah oui, Thierry ne te l'a pas dit (étonnant non ????) - A ta prochaine visite mets un titre plus explicite, gnre incrémentation d'un compteur ou que sais-je ? Baille bye .. ;)

Message édité par: Eric C, à: 19/06/2005 08:38
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Re: Incrémentation Numéro de Facture Automatique

Bonjour Eric !!

Et boum !! Collision en direct sur XLD lol !!!

Oui cette solution là permet plus simplement de faire aussi un numéro, mais il n'est pas certain que Jean-Alexandre ferme son facturier à chaque facture, et aussi qu'il ait compris qu'il faille concaténer ensuite sa cellule contenant 'Facture No:' avec la Cellule 'A1'.

Mais cette solution est sûrement plus facile à comprendre pour l'incrémentation du numéro que la mienne qui va lire le numéro à l'intérieur d'une string, ce qui risque de brouiller un peu les pistes d'un débutant ;)

Bon Dimanche à Toi cher Eric

@+Thierry


EDITION !!!

Arf, tout à fait Eric, voilà c'est fait, mais je pense que notre jeune ami n'a pas l'habitude des Forums de Partages de Connaissance, et de mettre un Sujet correct, si il a 5 minutes il lira notre Charte

Bonne Journée
@+Thierry

Message édité par: _Thierry, à: 19/06/2005 08:46
 

deudecos

XLDnaute Impliqué
Re: Incrémentation Numéro de Facture Automatique

Bonjour, Eric, Thierry, Jean Alexandre et le forum evidement !

Je ne voudrais pas me faire l'avocat du diable chers exceliens acharnes, mais qu'en serait il si jamais il devait y a voir des lettres incluent dans ce meme numero de facture ??? hein ? hein ? :woohoo:

En fait, ma question est simple, est il possible d'incrementer un numero de facture comprenant et chiffres et lettres ? sachant que leur ordre (lettres puis chiffres) est immuable.

Bon dimanche a tous

Olivier
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Re: Incrémentation Numéro de Facture Automatique

Bonjour Deudecos, re le Fil

Je n'ai pas vraiment saisi ta question, si tu veux dire que dans la possibilité où il y aurait du texte dans le numéro ?

Si le texte est 'immuable' alors c'est la proposition que j'ai donnée plus en avant dans ce fil...'StringInvoiceNumber' est 'lu' comme étant partie intégrante du numéro...

Maintenant si c'est pour obtenir un numéroteur alpha/num qui s'incrémente voici un algo sur deux digits que j'ai créé et utilise au boulot :

Option Explicit
Option Compare Text

Sub BuildKeyCashCode()
Dim GROUP1 As Variant, g1 As Variant
Dim GROUP2 As Variant, g2 As Variant
Dim i As Long
Dim TabCodes(936) As String
Dim Test As String

Test = InputBox('Saisir un code de 2 Digits', 'Unique Alpha Key Generator', 'A9')

GROUP1 = Array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z')
GROUP2 = Array('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9')


   
For Each g1 In GROUP1
       
For Each g2 In GROUP2
            TabCodes(i) = CStr(g1) & CStr(g2)
            Cells(i + 1, 1) = g1 & g2 
'(Si on veut écrire les code sur une feuille)
            i = i + 1
       
Next g2
   
Next g1

   
For i = 0 To UBound(TabCodes)
       
If Test = TabCodes(i) Then
            MsgBox 'NEXT CODE ' & TabCodes(i + 1)
           
Exit For
       
End If
   
Next
   

End Sub

Dans cet exemple je dois obtenir une numérotation de cet ordre :
AA
AB
AC
AD
AE
AF
AG
AH
AI
AJ
AK
AL
AM
AN
AO
AP
AQ
AR
AS
AT
AU
AV
AW
AX
AY
AZ
A0
A1
A2
A3
A4
A5
A6
A7
A8
A9
Puis !!!
BA
BB
BC
BD
BE

Etc etc... Mon algo permet 936 'Unique Key' (26 alpha + 10 Alpha/Num pour chacune des 26 lettres)

Voilà, je pense que ce devrait répondre à ta question...

Bon Dimanche

@+Thierry
 

deudecos

XLDnaute Impliqué
Re: Incrémentation Numéro de Facture Automatique

Re Thierry, le forum,

Alors la, je suis baba d'admiration ! :silly:

C'est exactement ta seconde proposition que je recherchais.

J'ai cependant un petit rajout a ma question, dis moi si je me trompe,
Si j'utilise ta methode et que je concatene celle ci avec l'autre methode qui consiste a incrementer uniquement des chiffres, je devrais pouvoir obtenir quelque chose du genre
AA001
AB002
AC003
etc...
Mais si je voulais au contraire, quelque chose du genre

AA001
AA002
AA003
...
AB001
AB002
etc...

Je sais, j'abuse, mais, pour apprendre, ben faut bien qq pour me montrer l'exemple, non ? ;)

Bon dimanche

Olivier
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Re: Incrémentation Numéro de Facture Automatique

Re Bonjour Olivier

Pour l'instant, je n'ai pas le temps de rédiger un algo qui ferait ceci, mais je pense avoir le scénario de cet algo car là il faut 'jouer' entre :

Un Algo qui va lire les 4 derniers digits en Val(Numeric) et passer à une Unité Supérieure du Second Digit si on atteint 9999...

Cette Unité Supérieur va ré-incrémenter l'algo d'une Boucle des 'Chr(65) à Chr(90)'... pour trouver le suivant s'afférant au Second Digit...Puis on force en écriture les quatres derniers Digits à '0000'

Dans la Suite de l'algo on vérifie ce second Digit, si il vaut 90 ('Z') et les Quatre Derniers '9999' on incrémente alors le Premier Digit dans le même Style de Boucle en Forçant le Second Digit sur Chr(65) 'A'... Les Quatres derniers à '0000'...

Disons qu'un algo comme ceci, bien monté et vérifié sur une pas mal de tests peut prendre un bout de temps à réaliser... Mais ce serait un excellent exercice si tu veux t'entrainer.

Bon Dimanche en Algo !!! lol
@+Thierry
 

Discussions similaires

Statistiques des forums

Discussions
312 304
Messages
2 087 069
Membres
103 453
dernier inscrit
Choupi