Bonjour,

Pour un exercice en auto-formation je dois créer un formulaire permettant d'enregistrer un bâtiment et des informations concernant ce dernier. J'ai donc créé un formulaire avec le Form Excel et dans un module je m'occupe du traitement (j'avais commencé à mettre le traitement directement dans le form mais un collègue m'a dit qu'il fallait le faire en passant par un autre module).

Je dois remplir une comboBox avec des noms de pays qui sont stockés dans une feuille excel (Feuil2, Colonne 3), j'ai donc ma fonction qui retourne un tableau mais impossible de récupérer ce dernier pour l'afficher dans le combobox. Voilà les codes :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
Public Function fn_InitialiserPays() As Variant
    Dim lt_pays(197) As String
    Dim li_Index As Integer, li_nombreLignes As Integer
    li_Index = 2
    li_nombreLignes = 199
    While li_Index <> li_nombreLignes
        lt_pays(li_Index - 2) = (Feuil2.Cells(li_Index, 3).Value)
        li_Index = li_Index + 1
    Wend
    fn_InitialiserPays = lt_pays
End Function
Et :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
Private Sub UserForm_Initialize()
    Dim li_Index As Integer
    Dim lt_pays(197) As String
    lt_pays = fn_InitialiserPays()
    For li_Index = 0 To UBound(lt_pays)
        cbPays.AddItem (lt_pays(li_Index))
    Next
    cbPays.ListIndex = 60 'On met la France par défaut
End Sub
Quand j'essaie de lancer mon formulaire j'ai l'erreur "impossible d'affecter à un tableau" puis en cliquant sur OK, lt_pays de "Private Sub UserForm_Initialize()" est surligné

Si vous avez une idée je suis preneur, je suis bloqué là-dessus depuis hier après midi !

Merci d'avance