Sub archiverfactures()
Application.ScreenUpdating = False
Dim NbLig&, Ligne&
NbLig = Application.Match("TOTAL H.T", Range("C:C"), 0)
If Worksheets("HISTORIQUE_FACTURE").Range("Tableau4").Item(1, 1) <> "" Then _
Ligne = Worksheets("HISTORIQUE_FACTURE").Range("Tableau4").Rows.Count + 2 Else Ligne = 2
With Sheets("FACTURE")
Sheets("HISTORIQUE_FACTURE").Range("A" & Ligne).Value = .Range("B17").Value 'N° Facture
Sheets("HISTORIQUE_FACTURE").Range("B" & Ligne).Value = .Range("C7").Value 'Date Facture
Sheets("HISTORIQUE_FACTURE").Range("C" & Ligne).Value = .Range("B11").Value 'Nom du client
'Je ne sais pas ou se trouve le n° d'affaire ????
Sheets("HISTORIQUE_FACTURE").Range("E" & Ligne).Value = .Range("D" & NbLig).Value 'Affaire ??
Sheets("HISTORIQUE_FACTURE").Range("F" & Ligne).Value = .Range("D39").Value 'Montant HT
Sheets("HISTORIQUE_FACTURE").Range("G" & Ligne).Value = .Range("D40").Value 'TVA
Sheets("HISTORIQUE_FACTURE").Range("H" & Ligne).Value = .Range("D41").Value 'Montant TTC
Sheets("HISTORIQUE_FACTURE").Range("I" & Ligne).Value = .Range("D42").Value 'Accompte
Sheets("HISTORIQUE_FACTURE").Range("I" & Ligne).Value = .Range("D43").Value 'Net à payer
'Nettoyage facture
.[C7,B11,D42].ClearContents
.Range("A20:C" & NbLig - 2).ClearContents
'Preparation nouveau N° de facture
.Range("B17").Value = .Range("B17").Value + 1
End With
'Remise en place de la facture normalisée
Dim NbLigSup&
If NbLig > 39 Then NbLigSup = NbLig - 20: Rows("20:" & NbLigSup).Delete shift:=xlUp
End Sub