tinet
XLDnaute Impliqué
Bonjour le forum,
Je cherche une solution pour excel 2003.
J'ai besoin d'aide sur un Userform en complement d'information.
j'ai créé un Userform, qui me permet de rechercher un produit par le mot première lettre ou contient ou fournisseur, mais séparer
je souhaiterais apporter des améliorations sur mon Userform.
j'aurais besoin de faire le tri avec les diférents choix.
faire une recherche avec première lettreou contient ,filtre avec fournisseur et même
produit frais mais en cumule
j'ai fait plusieurs tests mais je n'arrive pas à trouver la solution.
Voici mon code
et mon fichier
a+
Je cherche une solution pour excel 2003.
J'ai besoin d'aide sur un Userform en complement d'information.
j'ai créé un Userform, qui me permet de rechercher un produit par le mot première lettre ou contient ou fournisseur, mais séparer
je souhaiterais apporter des améliorations sur mon Userform.
j'aurais besoin de faire le tri avec les diférents choix.
faire une recherche avec première lettreou contient ,filtre avec fournisseur et même
produit frais mais en cumule
j'ai fait plusieurs tests mais je n'arrive pas à trouver la solution.
Voici mon code
PHP:
Private Sub ListBox2_Click() 'Lors de la sélection d'un fournisseur, afficher les produits
ListBox1.Clear
For Each f In [Liste].Offset(0, 8)
If f.Value = ListBox2.Text Then ListBox1.AddItem f.Offset(0, -8)
Next f
End Sub
Private Sub ListBox4_Click()
ListBox1.Clear
For Each f In [Liste].Offset(0, 1)
If f.Value = ListBox4.Text Then ListBox1.AddItem f.Offset(0, -1)
Next f
End Sub
Private Sub RefEdit1_BeforeDragOver(Cancel As Boolean, ByVal Data As MSForms.DataObject, ByVal x As stdole.OLE_XPOS_CONTAINER, ByVal y As stdole.OLE_YPOS_CONTAINER, ByVal DragState As MSForms.fmDragState, Effect As MSForms.fmDropEffect, ByVal Shift As Integer)
End Sub
Private Sub UserForm_Initialize()
Me.ListBox1.List = [Liste].Value
'*** Lister les fournisseurs sans doublons
Set listef = CreateObject("scripting.dictionary")
For Each c In [Liste].Offset(0, 8)
If Not listef.exists(c.Value) Then listef(c.Value) = c.Value
Next c
ListBox2.List = listef.keys
Set listef = CreateObject("scripting.dictionary")
For Each c In [Liste].Offset(0, 1)
If Not listef.exists(c.Value) Then listef(c.Value) = c.Value
Next c
ListBox4.List = listef.keys
'***
End Sub
Private Sub TextBox1_Change()
Me.ListBox1.Clear
For Each c In [Liste]
If UCase(c) Like UCase(Me.TextBox1) & "*" Then Me.ListBox1.AddItem c
Next c
End Sub
Private Sub TextBox2_Change()
Me.ListBox1.Clear
For Each c In [Liste]
If UCase(c) Like "*" & UCase(Me.TextBox2) & "*" Then Me.ListBox1.AddItem c
Next c
End Sub
Private Sub ListBox1_Click()
ActiveCell = Me.ListBox1
Unload Me
End Sub
et mon fichier
a+