Selection et Remplissage ListBox
Bonjour à tous,
Dans le cadre d'un stage, je dois créer une gestion de stock sur excel en automatisant du mieux que possible.
Étant nouveau dans le monde du VBA, je bloque sur un certain nombre de points :
- Est-il possible de récupérer la liste des feuilles de calcul du classeur (noms) pour insérer chaque feuille (nom) en tant qu'Item dans une ListBox ? Le but étant que la liste se mette a jour lors de l'ajout d'une nouvelle feuille.
- Comment récupérer le nom de l'Item sélectionné dans ma ListBox ? Le but étant ici de renvoyer à une feuille en fonction de la sélection.
- Enfin, une fois ma première liste créée, je voudrais faire en sorte que lorsqu'on clique sur une ligne, une seconde liste se remplisse avec certaines cellules de la feuille correspondante (au clic dans la 1ere liste)
Merci de votre attention !
Bonjour,
Tu ne dis pas si tu te trouve dans une feuille ou dans un Userform... ?
Restons dans le cas d'une feuille (compte-tenu du contexte que tu évoques) :
Sub test()
Dim NFeuils(), i%
ReDim NFeuils(Worksheets.Count - 1)
For i = 1 To Worksheets.Count
NFeuils(i - 1) = Worksheets(i).Name
Next i
Worksheets("Feuil1").ListBox1.List = NFeuils
End SubIci procédure indépendante, à lancer, qui alimente une ListBox sur Feuil1. (dans un module standard)
Elle peut être tranférée en (ou lancée par) une procédure d'évènement : Open (ouverture du classeur) et/ou NewSheet (création d'une nouvelle feuille dans le classeur.
Récupérer le nom, c'est la propriété Value... Pour accéder à la feuille à partir de la ListBox, par exemple :
Private Sub ListBox1_Click()
Worksheets(ListBox1.Value).Activate
End SubTa dernière question présuppose que tu fournisse un classeur modèle illustrant ton propos et permettant de coder avec précision l'opération demandée.
Cordialement.