1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
| Option Explicit
Private Sub comboTailleSupport_click()
'ici, c'est lorsque je clic sur un choix comme petit, grand,... j'arrive ici
'if comboTailleSupport.ListIndex >=0 ça veut dire que si on a fait un choix
'then AfficherNombreBoules cela veut dire que j'appelle la procédure AfficherNombreBoules
'comboTailleSupport.ItemData c'est un tableau avec lequel j'aimerais remplir ma liste de sélection!!!
'(comboTailleSupport.ListIndex) c'est l'index
'ItemData, c'est un tableau de valeur de type long associés à chaque élément, c'est-à-dire, à l'élément zéro,
'vous avez l'itemData zéro, pour l'élément 1 vous avez l'itemData 1
If comboTailleSupport.ListIndex >= 0 Then AfficherNombreBoules comboTailleSupport.ItemData(comboTailleSupport.ListIndex)
End Sub
Private Sub comboTypeSupport_click()
'j'appelle la fonction RemplirTailleSupport en lui passant le nom du support
RemplirTailleSupport comboTypeSupport.ListIndex
End Sub
Private Sub Form_Load()
comboTailleSupport.Visible = False
comboNombreBoules.Visible = False
With comboTypeSupport
.Clear
.AddItem "Baquet en plastique"
.AddItem "Cornet"
.AddItem "Gaufrette"
.AddItem "Panier en biscuit"
End With
End Sub
Private Sub RemplirTailleSupport(ByVal NumeroSupport As Integer)
Dim tableau As Variant
'je reçois le nom du support et par rapport à un select case, j'affiche les données du support
Select Case NumeroSupport
Case 0
'je crée une variable de type tableau, le ";" correspond au séparateur
tableau = Split("petit,3;grand,5", ";")
With comboTailleSupport
.Clear
Dim i As Integer, element As Variant
'de 0 au nombre d'élément dans le tableau
For i = 0 To UBound(tableau)
element = Split(tableau(i), ",")
.AddItem element(0)
.ItemData(.NewIndex) = Val(element(1))
Next i
.Visible = True
End With
Case 1
With comboTailleSupport
.Clear
.AddItem "Baby"
.AddItem "Normal"
.AddItem "Grand"
.AddItem "Double"
.AddItem "Triple"
.Visible = True
End With
Case 2
With comboTailleSupport
.Clear
.AddItem "ronde"
.AddItem "ovale"
.Visible = True
End With
End Select
End Sub
Private Sub AfficherNombreBoules(Index As Integer, ByVal NombreBoules As Long)
MsgBox (comboTailleSupport.ItemData(comboTailleSupport.ListIndex))
For i = 0 To NombreBoules
With comboNombreBoules
.AddItem Chr(i)
End With
Next i
comboNombreBoules.Visible = True
End Sub |
Partager