J'ai pu voir ce qui se produit mais je ne comprend pas pourquoi.
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| 1 Private Sub aliments_liste_Click()
2 aliment_nom = Me.aliments_liste.List(Me.aliments_liste.ListIndex, 0)
3 aliment_quantite = Me.aliments_liste.List(Me.aliments_liste.ListIndex, 1)
4 ref_aliment = Me.aliments_liste.ListIndex
5 End Sub
6 Private Sub bouton_plus_Click() ' modifier item dans listbox
7 Me.aliments_liste.List(ref_aliment, 0) = aliment_nom
8 Me.aliments_liste.List(ref_aliment, 1) = aliment_quantite
9 End Sub |
Ainsi :
Un clic sur le bouton + ouvre la sub en ligne 6
la valeur aliment_nom est bien récupérée et affecté à l'index de la listbox qui a été modifié. Si le nom a changé le nouveau nom est donc affecté à l'index.
Puis après le code en ligne 7 le programme se reroute vers la ligne 1 ???? Pourquoi puisqu'on n'a pas cliqué A NOUVEAU sur aliment_list
C'est donc dans cette sub que Excel affecte à aliment_quantité sa valeur qui existe dans aliment_liste sans tenir de celle saisie compte dans la textbox aliment_quantite.
Puis il retourne en ligne 9
Donc Je comprend que lorsque en ligne 6 on affecte une valeur à liste_aliment Excel assimile ça à un évènement click. Est ce bien cela ?
Partager