Autres Code vba incrémentation N°

samia89

XLDnaute Nouveau
Bonsoir tt le monde j’ai un souci avec incrémentation n° automatique

Voila j’ai classeur avec deux feuils
feuil Facture
feuil ARCHIVESFAC


Dans la feuil « Facture » j’ai un Bouton nommé sauvegarder, la Cellule « E6 »=date aujourd’hui et la Cellule « E8 » = n° facture qui change a chaque Sauvegarde

j’ai utilise la formule suivant dans "E8" feuil facture
VB:
 ="Fac-"&TEXTE(STXT(ARCHIVESFAC!A3;5;3)+1;"000")&"-"&MAJUSCULE(TEXTE(E6;"MMM"))
pour avoir ce numéro FAC-001-JUIL

Malheureusement quand je clic sur le Bouton sauvegarde a qui j’ai affecté la macro en bas de texte : elle sauvegarde les facture de la cellule ((E8) feuil Facture = Fac-001-JUIL) dans la cellule ((A3) feuil ARCHIVESFAC) en chiffres 1.2.3…, et la formule de la Cellule (« E8 » = n° facture) elle s’efface et remplace par « =(ARCHIVESFAC!A3)+1 »

et que elle es sensé sauvegarder le de cette manier Fac-001-JUIL, Fac-002-JUIL.... et le dernier n° doit toujours être sauvegarder a la cellule ((A3) feuil ARCHIVESFAC) comme si le cas actuellement avec les chiffre
puis aprés la sauvegarde la cellule (E8) feuil Facture Affiche FAC-002-JUIL) (+1)

Code:
« Sub Enregistrer_Cliquer()


myyear = Year(Range("E6"))

couryear = Year(Now)
If myyear = couryear Then GoTo suite Else MsgBox ("ATTENTION! soit tu as rentré une date qui n'appartient pas à l'année en cours, soit tu n'as pas respecté le format de date (JJ/MM/AA), soit tu as oublié d'inscrire la date !")
Range("E6").ClearContents
Exit Sub
suite:

Style = vbOKCancel
Reponse = MsgBox("As-tu bien tout vérifié, parce qu'après c'est plus compliqué de modifier (il faut aller dans le listing). Si c'est bon, clique sur OK ", Style)
If Reponse = vbCancel Then Exit Sub

ActiveSheet.Unprotect
Worksheets("ARCHIVESFAC").Select
Worksheets("ARCHIVESFAC").Rows(3).Select
Selection.Insert
Range("A3").Select


    Range("A3").Select
Range("A3").Formula = "=MAX(A4:A50000)+1"
Selection.Copy
Selection.PasteSpecial Paste:=xlValues
Range("A1").Select

   Range("B3").Formula = "=FACTURE!E6"
    Range("C3").Formula = "= FACTURE!E10"
    Range("D3").Formula = "= FACTURE!E2"
    Range("E3").Formula = "= FACTURE!E4"



    'selectionne la feuille des commandes
    Worksheets("Fature").Select
    Range("E6").Select
    Range("E6") = Now

    Exit Sub

End Sub


merci d'avance pour votre aide et j’espère que j'ai bien exposer mon problème
 
Dernière édition:

Discussions similaires

Réponses
21
Affichages
886

Statistiques des forums

Discussions
311 725
Messages
2 081 940
Membres
101 845
dernier inscrit
annesof