Sub SaveBonDeCommande()
Dim TabCommande() As Variant
With Sheets("Facture de service") 'dans la feuille Facture
TabCommande = .ListObjects(1).DataBodyRange.Value 'on récupère les données dans un tablo vba
Client = .Range("C10") 'on récupère l'ID client
'on peut faire quelques tests avant de continuer; comme vérifier qu'un ID client a bien été saisi
If Client = "" Then
MsgBox ("Veuillez saisir un ID Client")
Exit Sub 'on quitte la macro pour bypasser ce qui suit
End If
End With
With Sheets("2022") 'dans la feuille 2022
For i = LBound(TabCommande, 1) To UBound(TabCommande, 1) 'pour chaque ligne de commande
fin = .Range("A" & .Rows.Count).End(xlUp).Row + 1 'première ligne vide de la colonne A
.Range("A" & fin) = Client 'on colle l'ID client
.Range("G" & fin) = TabCommande(i, 1) 'Qté
.Range("D" & fin) = TabCommande(i, 2) 'Matériaux
.Range("F" & fin) = TabCommande(i, 3) 'Epaisseur
'Référence
'PU
'Total
Next i
End With
Effacer = MsgBox("Souhaitez vous effacer le BdC pour en saisir un nouveau?", vbYesNo)
If Effacer = vbYes Then
With Sheets("Facture de service") 'dans la feuille Facture
.Range("C10").ClearContents
.ListObjects(1).DataBodyRange.ClearContents
.Range("G13").FormulaR1C1 = "=[@[Prix unitaire]]*[@Quantité]"
End With
End If
End Sub