Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Aide pour liste box

1 réponse
Avatar
Hicham Oudrhiri
Bonsoir,*Merci beaucoup pour ton aide qui m est vitale.
Je vais abuser de ta gentillesse pour te demander une fois de plus ton =
aide
Voila toujours le même fichier cette fois les données sont organiséescomme
suit
nom prom produit1 sour prod 1 prix 1
nom prom produit1 sous prod 2 prix 2
nom prom produit1 sous prod 3 prix 3
nom prom produit1 sous prod 4 prix 4
nom prom produit2 sous prod 2 prix 5
nom prom produit3 sous prod 3 prix 6
nom prom produit4 sous prod 4 prix 7
J ai une combobox ou l utilisateur devra choisir le nom de la promo sans
problème pour ce code.
En dessous il y a une liste box avec au dessus une case a cocher.
Je veux que la liste box soit grisé jusqu'a ce qu'on coche la case et la
elle s alimente sur la base en fonction du
Choix de combobox. Les élements qui devrait apparaitre sont produit
les sousprod et le prix

Hicham

1 réponse

Avatar
lSteph
Bonjour Hicham,

Voici un exemple: http://cjoint.com/?ewpSRyTMWk
Pour la Listbox j'ai mis columncount à 3 diectement via la fenêtre des
propriétés.


'''''******************
Option Explicit
Dim col As String
Dim List_temp As New Collection

Private Sub CheckBox1_Change()
Me.ListBox1.Visible = CheckBox1
End Sub

Private Sub ComboBox1_Change()
CheckBox1.Enabled = True
ListBox1.Clear
Dim r As Range, j As Single
For Each r In Range("c2", [e65536].End(xlUp)).Rows
If Cells(r.Row, 2) = ComboBox1 Then

With Me.ListBox1
.AddItem r.Cells(1)
.List(j, 1) = r.Cells(2)
.List(j, 2) = r.Cells(3)
End With
j = j + 1
End If
Next
End Sub

Private Sub CommandButton1_Click()
Unload Me
End Sub

Private Sub UserForm_Initialize()
Call rempliste(ComboBox1, "b")
CheckBox1.Enabled = False
Me.ListBox1.Visible = CheckBox1

End Sub
Sub rempliste(malist As ComboBox, col As String)

Dim i As Integer, derlg
Dim c As Range
Do While List_temp.Count > 0
List_temp.Remove 1
Loop
On Error Resume Next
derlg = Range(col & "65536").End(3).Row
For Each c In Range(col & "2:" & col & derlg)
List_temp.Add c, CStr(c)
Next c
On Error GoTo 0

For i = 1 To List_temp.Count
malist.AddItem List_temp(i)
Next i
End Sub
'''''******************

'Cordialement
'lSteph

"Hicham Oudrhiri" a écrit dans le message de news:

Bonsoir,*Merci beaucoup pour ton aide qui m est vitale.
Je vais abuser de ta gentillesse pour te demander une fois de plus ton > aide
Voila toujours le même fichier cette fois les données sont organiséescomme
suit
nom prom produit1 sour prod 1 prix 1
nom prom produit1 sous prod 2 prix 2
nom prom produit1 sous prod 3 prix 3
nom prom produit1 sous prod 4 prix 4
nom prom produit2 sous prod 2 prix 5
nom prom produit3 sous prod 3 prix 6
nom prom produit4 sous prod 4 prix 7
J ai une combobox ou l utilisateur devra choisir le nom de la promo sans
problème pour ce code.
En dessous il y a une liste box avec au dessus une case a cocher.
Je veux que la liste box soit grisé jusqu'a ce qu'on coche la case et la
elle s alimente sur la base en fonction du
Choix de combobox. Les élements qui devrait apparaitre sont produit
les sousprod et le prix

Hicham