Salut Quaisako
Toujours sur ce UserForm de saisie... J'ai pas encore fini le mien pour la démo !! (mais je ferais un truc pour Noël, promis !!
Je pense que tu as plein de trucs qui ne servent à rien dans ton code par exemple :
Private Sub Cmd_Valider_Click()
' With Saisie_Facture
' N°_de_facture = .Txt_Num_Fac.Value
' Date = .Txt_Date_Fac.Value
' Client = .Cbx_Client_Fac.Value
' Désignation = .Cbx_Désignation_Fac.Value
' Référence = .Txt_Réf_Fac.Value
' Prix_Net_Unitaire = .Txt_PNU_Fac.Value
' Kilo = .Txt_Kilo_Fac.Value
' Unité = .Txt_Unité_Fac.Value
' End With
Cà sert à quoi ? (en plus la ligne Date plante, car Date est entre autre une function ou une variable réservée dans VBA)
Pour Ligne :
'Ligne = Sheets("Facture").Range("B65536").End(xlUp).Row + 1
'Ligne = Sheets("Facture").Range("C65536").End(xlUp).Row + 1
'Ligne = Sheets("Facture").Range("D65536").End(xlUp).Row + 1
'Ligne = Sheets("Facture").Range("A65536").End(xlUp).Row + 1
'Ligne = Sheets("Facture").Range("F65536").End(xlUp).Row + 1
Une seule fois suffit !! si tu es sur un même tableau...
Ensuite tu as des contradictions :
dans ta colonne A tu as une formule :
=IF(ISBLANK($D17),"",VLOOKUP(Facture!$D17,ListeFournitures!$A$2:$C$7,2))
Mais dans ton code tu dis :
Ligne = Sheets("Facture").Range("A65536").End(xlUp).Row + 1
puis :
Sheets("Facture").Range("A" & Ligne).Value = Txt_Réf_Fac.Value
VBA écriras la valeur de la textBox "Txt_Réf_Fac" EN DEHORS de ton tableau... (car les cellules contenant des formules sont considérée comme pleine avec "xlup"...)
Tu as encore pas mal de boulot... Et moi aussi au bureau en ce moment.
Si tu fais just çà dans ton bouton de validation :
Private Sub Cmd_Valider_Click()
Dim Ligne As Integer
If Txt_Unité_Fac.Value = "" Then
MsgBox "Saisir Une Quantité"
Exit Sub
End If
Ligne = Sheets("Facture").Range("B25").End(xlUp).Row + 1
With Sheets("Facture")
.Range("B" & Ligne).Value = Txt_Unité_Fac.Value
.Range("C" & Ligne).Value = Txt_Kilo_Fac.Value
.Range("D" & Ligne).Value = Cbx_Désignation_Fac.Value
.Range("F" & Ligne).Value = Txt_PNU_Fac.Value
End With
Unload Saisie_Facture
End Sub
Tu devrais déjà avancer un peu.
Sorry Quaisako, mais je n'ai pas plus de temps maintenant.
En espérant te mettre un peu plus sur la bonne voie...
Bon App
@+Thierry