BONJOUR,
voila j'utilise le code suivant :
pour initialiser et " modifier en rowsources " mes combobox
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 Private Sub UserForm_Initialize() Dim DernièreLigne As Integer, i As Integer Sheets("bd").Activate DernièreLigne = ActiveSheet.Range("c4").SpecialCells(xlCellTypeLastCell).Row + 1 ' Première ligne vide For i = 1 To 23 InitCombo DernièreLigne, i Next End Sub Sub InitCombo(NoLigne, NoColonne) Dim NomCombo As String Dim Plage As String Sheets("bd").Activate Plage = Range(Cells(3, NoColonne), Cells(NoLigne, NoColonne)).Address NomCombo = "Cbox" & NoColonne With GRILLE.Controls(NomCombo) .Text = Cells(1, NoColonne) .RowSource = Plage End With End Sub
j'ai 23 combobox liées entre elles ( d'ou for i=1 to 23 )
par contre mon tableau base de données commence a partir de la colonne C
le hik c'est que lorsque je lance Sub UserForm_Initialize() en mode F8 et que i=1 alors j'aipour cbox1 alors qu'il me faudrait l'address="$C$3:$c$16$
Code : Sélectionner tout - Visualiser dans une fenêtre à part Range(Cells(3, NoColonne), Cells(NoLigne, NoColonne)).Address="$A$3:$A$16$
je vois pas comment indexer des le depart pour cbox1 l' address "$C$3:$C$16![]()
Partager