re
dans votre feuille Demande achat, supprimez les formules que vous avez en colonne D à H entre la ligne 32 et 38.
ensuite vous pouvez remplacer le code Valider par celui ci-dessous
Private Sub CommandButt_Valider_Click()
If Trim(TextBox_Quantité) = "" Then
TextBox_Quantité.BackColor = vbRed
MsgBox "Veuillez Marquer la Quantite !", vbInformation, "Champs incomplets"
TextBox_Quantité.SetFocus
Exit Sub
End If
Dim Lig As Integer
Dim cel as Range
With Sheets(F_DEMANDE_ACHATS)
For Each cel In Range("D19:D38") 'recherche de la premiere cellule vide
If cel.Value = "" Then Lig = cel.Row: Exit For Else: Exit Sub 'exit sub pour sortir du code si pas de cellules vides
Next cel
.Range("D" & Lig) = ListBox1.Value
.Range("E" & Lig) = TextBox_Fournisseur.value
.Range("F" & Lig) = Val(Replace(TextBox_Prix, ",", "."))
.Range("G" & Lig) = TextBox_Quantité.value
End With
End Sub
NB : Evitez les accents dans le nom des feuilles ou textbox etc... (exemple Textbox_Quantite au lieu de textbox_Quantité). Je ne les ai pas changé dans le fichier que j'ai posté mais je vous suggère de le faire. Cela vous évitera des soucis éventuels.