Bonjour,

J'ai un userform qui doit faire remonter les valeurs d'une feuille excel (de la colonne A) dans une combobox.

Ces valeurs sont présentes dans un tableau dont l'entête débute en A13.

Je souhaiterais voir apparaître dans ma combobox les valeurs de la cellule A14 jusqu'à la dernière cellule non vide.

Voici mon code qui fonctionne bien mais pourrait être amélioré :

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
'Pour le formulaire
Public Sub UserForm_Initialize()
 
Dim choix1()
    choix1 = Application.Transpose(Sheets("Liste d'émargement électronique").Range("a12:a" & Sheets("Liste d'émargement électronique").Range("a65000").End(xlUp).Row))
    Me.ComboBox1.List = choix1
End Sub
 
 
'Pour la liste déroulante CAB
Private Sub ComboBox1_Change()
Dim Ligne As Long
 
If Me.ComboBox1.ListIndex = 1 Then Exit Sub
Ligne = Me.ComboBox1.ListIndex + 12
 
TextBox1 = Worksheets("Liste d'émargement électronique").Cells(Ligne, "A")
 
End Sub
Le code commence en A12 car en A14 il y a débogage quand le tableau est vide avec une erreur de type 13 incompatibilité de type.
Il faut 2 lignes non vides dans le tableau pour que le code paramétré en A14 fonctionne.

L'un d'entre vous pourrait-il m'aider ?

Merci beaucoup !

Bonne journée