{VBA} Remplir une ListBox par appel à une Function

F22Raptor

XLDnaute Impliqué
Hello
Pour prévoir une fonction que je mutualiserai dans un futur classeur, je souhaite remplir la ListBox de mon formulaire par appel à une Function, avec en paramètre le nom de la ListBox.

Dans l'initialize de mon formulaire, j'ai donc : Call Remplissage(ListBox1)

Et en Function, j'ai :
Function Remplissage(Boite As ListBox)
Me.Boite.AddItem "CA MARCHE !!!"
End Function

Problème : Erreur d'Exec 13 - Incompatibilité de type

Une idée nocturne ?

(fichier joint)
 

Pièces jointes

  • remplissageListbox.xls
    29.5 KB · Affichages: 69

Dranreb

XLDnaute Barbatruc
Re : {VBA} Remplir une ListBox par appel à une Function

Bonsoir.

J'ai fait plusieurs modif, je ne sais plus laquelle est déterminante pour que ça marche.

Module1 :
VB:
Option Explicit

Sub lancement()
UserForm1.Show
End Sub

Sub Remplissage(ByVal Boite As MSForms.ListBox)
Boite.AddItem "CA MARCHE !!!"
End Sub
Userform1 :
VB:
Option Explicit

Private Sub UserForm_Initialize()
Remplissage Me.ListBox1
End  Sub
Mais dans la mesure où on peut affecter un tableau à la propriété List d'un contrôle, plutôt que de faire des AddItem, ça ne me parait pas très utile ni simplificateur de "sortir" son initialisation de l'Userform. À priori…

Edit: le plus grave était probablement "Utilisation incorrecte du mot clé Me" dans un module ordinaire.
 
Dernière édition:

Discussions similaires

Réponses
18
Affichages
599

Statistiques des forums

Discussions
312 103
Messages
2 085 310
Membres
102 859
dernier inscrit
Diallokass