Bonjour SFD34,
Pour pouvoir déclencher un évènement sur un choix dans une liste, tu dois d'abord positionner la propriété "Locked" de chaque liste à "False".
Je propose d'ajouter le code suivant au choix sur l'évènement "Click" ou "DblClick" de la liste contenant les codes articles :
Const cFirstRow = 5
Dim sArt As String, lRow As Long
Dim oSheet As Worksheet
'On récupère la l'article
sArt = ListBox3.Value
If Len(sArt) > 0 Then
Set oSheet = ThisWorkbook.Worksheets("Facture")
'Recherche de la première ligne libre
For lRow = cFirstRow To 24
If Len(oSheet.Cells(lRow, 1)) = 0 Then
Exit For
End If
Next
If lRow <= 23 Then
oSheet.Cells(lRow, 1).Value = sArt
CAFE_INFUSION.Hide
oSheet.Cells(lRow, 2).Select
Else
MsgBox "Trop de lignes dans la facture!"
End If
End If
Je te revois ton Excel modifié comme décrit ci-dessus pour le userform "CAFE-INFUSION".
A toi de reproduire la même chose pour le userform "PIZZAS"...
Pour le positionnement des userforms, tu ajoutes le code suivant dans le code des userforms:
Private Sub UserForm_Activate()
Me.Top = Application.Top + 300 'Modifier 300 pour positionner le haut de la userform à l'endroit voulu
Me.Left = Application.Left + 300 'Modifier 300 pour positionner le bord gauche de la userform à l'endroit voulu
End Sub