Bonsoir le forum

Je sollicite vos expériences pour améliorer mon code.
En effet, j'ai un usf qui me permet de facturer les boissons vendues.
Je me sert de la valeur de la cellule A2 nommée NumFacture pour l'incrémentation du numéro de la facture.
Tout se passe avec le code ci-dessous mais le seul problème est qu'il est lent (l'incrémentation et l'affichage du numéro dans le textbox_Réf prend du temps):
- Il permet d'incrémenter le numéro de la facture
- il l'affiche dans le Textbox_Réf
- il centralise les données des controls dans la base de données (feuille "ETAT_VENTE").
Est-il possible d'accélérer le fonctionnement de la macro?
Il m'avait été conseillé dans ce forum de travailler à simplifier mes codes et non de concentrer dans un seul code.
le problème est que je n'arrive pas à le faire.
Vos propositions seront les bienvenues:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Private Sub Factur_Caisses_Click()
Dim ligExport As Long, lNumFacture As Long, oCellNumFacture As Range
Dim booAddFacture As Boolean
'Dim ligExport As Long
ligExport = Feuil2.Range("a" & Rows.Count).End(xlUp).Row + 1
 
'Affectation de la cellule contanant le numéro de facture à incrémenter
    Set oCellNumFacture = ThisWorkbook.Names("NumFacture").RefersToRange
 
'If Me.Combo_Serveur <> "" And Me.TextBox_Réf <> "" Then 'si service et ref renseignés
    For i = 1 To 10 'pour toutes les lignes
        If Me.Controls("ComboBox_Bois" & i) <> "" And Me.Controls("TextBox_Qte" & i) <> "" Then 'si tous les contrôles de la ligne sont remplis
        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 Feuil2
                .Range("a" & ligExport) = Date
                .Range("b" & ligExport) = Me.Controls("ComboBox_Bois" & i)
                .Range("c" & ligExport) = CDbl(Me.Controls("TextBox_Qte" & 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.CodeExpl
                .Range("h" & ligExport) = CDbl(Me.TextBox_Encais)
                .Range("i" & ligExport) = CDbl(Me.TextBox_Avoir)
                .Range("j" & ligExport) = CDbl(Me.TextBox_Reste)
            End With
 
            'incrémentation de la ligne
            ligExport = ligExport + 1
        End If
    Next i
'End If
End Sub