Re,
D'abord dans votre colonne B de la feuille stock il y a des cellules avec liste déroulante que vous devez supprimer
dans l'USF essayez votre code Enregistrer comme ceci
Private Sub CommandButton2_Click() 'enregistrer
Dim Dl As Integer, lig As Integer, ligne As Integer
If Me.List_Order.ListCount > 0 Then 'Controle si la liste n'est pas vide
If MsgBox("Voulez-vous enregistrer cette transaction ?", vbYesNo) = vbYes Then
For ligne = 0 To Me.List_Order.ListCount - 1
'ajouter une nouvelle ligne dans notre tableau
With Sheets("Stock").ListObjects(1)
If .ListRows.Count = 0 Then
.ListRows.Add: lig = 1
Else: .ListRows.Add: lig = .ListRows.Count 'insérer à la dernière ligne
End If
'afficher nos informations dans la base de donnée
With .DataBodyRange
.Item(lig, 1) = Me.Info1
.Item(lig, 2) = Me.Txt_DateCde
.Item(lig, 8) = Me.TextBox3
.Item(lig, 9) = Me.TextBox2
'Controler si c'est un fournisseur ou un client
If Me.Label_type = "Fournisseur" Then
.Item(lig, 4) = Me.Cbx_Type
Else
.Item(lig, 3) = Me.Cbx_Type
End If
'ajouter les données de la zone de liste
.Item(lig, 5) = Me.List_Order.List(ligne, 0)
.Item(lig, 6) = Me.List_Order.List(ligne, 1)
.Item(lig, 13) = Me.List_Order.List(ligne, 2)
.Item(lig, 14) = Me.Cbx_Type2
.Item(lig, 15) = Me.TextBox4
.Item(lig, 16) = Me.Cbx_Type3
.Item(lig, 17) = Me.TextBox5
.Item(lig, 18) = Me.Cbx_OuiNon
.Item(lig, 19) = Me.TextBox6
End With
End With
Next ligne
MsgBox "Classement est fait"
Unload Me
ThisWorkbook.Save
End If
End If
End Sub
Après on peut regarder les autres choses si vous voulez
Cordialement