Incrémentation numéro facture_Avoir avec affichage dans textbox_Réf

Bonsoir le forum

Je viens avec un besoin comportant des particularités.

Je souhaite qu'on m'aide à réaliser une macro qui me permettra d'incrémenter :

  • le numéro de la facture lorsque je clique sur la commande "Facture"
  • le numéro de la facture avoir lorsque je clique sur la commande "Avoir"
En validant la commande du client par le bouton "facture" les actions suivantes doivent se réaliser
  • incrementation du numéro de facture dans la colonne A2:A de la feuille "numéro_facture sachant que la numerotation est alphanumerique (FA00001)
  • le dernier numéro incrémenté devra s'afficher dans le textbox_réf (biensur si validation par le bouton "Facture"
  • Centralisation des données à copier dans la feuille " Centralisation "
NB: il en est de même que lorsque la validation se fait par le bouton "Avoir" (le numero pour l'avoir est du type AV00001)

Nb :La macro pour la centralisation fonctionne déjà bien.

Bonjour Zombe,

Je te propose :

- de nommer respectivement "NumFacture" et "NumAvoir" les 2 cellules contenant le numéro de facture et d'avoir du volet "Numero_Facture" (>FORMULES>Gestionnaire de Noms) :

nommage

- Le code suivant pour le bouton "Facture"

Private Sub CommandButton1_Click()
Dim ligExport As Long, lNumFacture As Long, oCellNumFacture As Range
Dim booAddFacure As Boolean
ligExport = Feuil3.Range("a" & Rows.Count).End(xlUp).Row + 1

If Me.Combo_Serveur <> "" Then  'si service et ref renseignés
    'Affectation de la cellule contanant le numéro de facture à incrémenter
    Set oCellNumFacture = ThisWorkbook.Names("NumFacture").RefersToRange

    For i = 1 To 7 'pour toutes les lignes
        If Me.Controls("ComboBox_Bois" & i) <> "" And Me.Controls("TextBox_PV" & i) <> "" And Me.Controls("TextBox_Mtant" & i) <> "" Then
            'A 'si tous les contrôles de la ligne sont remplis
            'On incrément la facture pour la 1ère ligne
            If Not booaddfacture Then
                booaddfacture = True
                lNumFacture = oCellNumFacture.Value + 1
                oCellNumFacture.Value = lNumFacture
                Me.TextBox_Réf.Value = "FA" & Format(lNumFacture, "00000")
            End If
            'export
            With Feuil3
                .Range("a" & ligExport) = Date
                .Range("b" & ligExport) = Me.Controls("ComboBox_Bois" & i)
                .Range("c" & ligExport) = CDbl(Me.Controls("TextBox_PV" & i))
                .Range("d" & ligExport) = CDbl(Me.Controls("TextBox_Mtant" & i))
                .Range("e" & ligExport) = Me.Combo_Serveur
                .Range("f" & ligExport) = Me.TextBox_Réf
                .Range("g" & ligExport) = Me.Caissier
            End With

            'incrémentation de la ligne
            ligExport = ligExport + 1
        End If
    Next i
End If

End Sub

- De reproduire ce code en l'adaptant pour le bouton "Avoir"

Je joins l'EXCEL modifié.

Bonsoir GVIALLE

Je ne sais pas comment vous qualifier mais vous êtes un champion.

Vous avez trouvé la meilleure parade à mon besoin.

C'est formidable!!

Thanks a lot

Y’re welcome

Bonsoir GVILLES et le forum

Je m'excuse de revenir sur ce sujet.

Je souhaite avoir une solution pour pallier une insuffisance constatée.

En effet, j'ai constaté que lorsqu'on clique sur la commande "Facture" seulement, il y'a incrementation du numéro de la référence ce qui n'est pas normal.

Je souhaite que pour une commande, lorsqu'on clique une seule fois sur le bouton "Facture", qu'on ne puisse plus le faire fonctionner.

Autrement dit, un clic à la fois pour chaque commande.

Rechercher des sujets similaires à "incrementation numero facture affichage textbox ref"