Bonsoir à l'équipe

J'aurai une question (surement simple) a propos de l'association d'un nom automatique à une listbox.

J'ai un projet ou je dois générer un nombre X de lignes, avec sur chacune une listbox. Pour la suite du projet de dois pouvoir extraire la valeur de chaques listbox sur une cellule en associant la sortie à un nom de list.

Ce que je comptais faire, c'était lors de leur géneration, leur donner un nom incrémentant grace à la boucle for, mais cela ne marche pas.

En parallele je dois génerer des checkboxes, qui elles marchent parfaitement.

Je vois que cela viens du oleobject, mais la je sèche.

Voici mon code, n'hésitez pas à me dire si cela est imcompréhensible, je débute donc c'est surement horrible .


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
Dim a As Single
a = InputBox("Combien de ListBox voulez vous ?")
 
For i = 1 To a
 
    Dim j As Integer
    'Recherche de la dernière ligne non vide du tableau
    j = Range("B" & Rows.Count).End(xlUp).Row
    'Ajout d'une ligne à la dernière ligne du tableau
    Rows(j + 1).Insert
 
'création de la listbox
    Dim Emplacement As Range
    Dim Obj As Object
    'Commencer la géneration sur la case  E3
    Set Emplacement = Range("E3")
    'crée le bouton
    With Emplacement
    'Création + disposition de la listbox
    Set Obj = ActiveSheet.OLEObjects.Add(ClassType:="Forms.Combobox.1", _
    Link:=False, DisplayAsIcon:=False, Left:=.Left * 1.025, Top:=.Top * 1.1, Width:=.ColumnWidth * 5.5, Height:=.RowHeight * 0.9)  '
    Obj.Name = "lbE" & Format$(derniereligne)
le problème vient de la dernière ligne, "Obj.Name = "lbE" & Format$(derniereligne)". Le reste marche comme je le voudrais.

Voila, un grand merci à ceux qui me réponderont. Le codage n'est pas forcément mon domaine de compétance
Bonne soirée