MichD
unread,Apr 28, 2022, 10:19:06 AM4/28/22You do not have permission to delete messages in this group
Sign in to report message
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to
Le 28/04/22 à 09:14, ThierryP a écrit :
> Bonjour le forum et Denis !
>
> Un truc que je ne comprends pas (parmi des tas d'autres !!!) :
> Pourquoi ceci
> With Feuil1
> Plage = .Range("Matricules")
> Me.Matricules.List = Plage
> End With
>
> fonctionne, et pas
> Me.Matricules.List = Feuil1.Range("Matricules")
>
> Merci d'avance pour l'explication !
>
> ThierryP
Bonjour,
plage = Range("Matricules")
Me.ComboBox1.List = plage
Écrit de cette manière plage devient un tableau (array) de type variant.
La propriété "List" n'a aucun problème avec le contenu d'un tableau (array)
Msgbox TypeName(plage) '=Variant()
Dans ce qui suit, "Range("Matricules")" est un "Range" et non un tableau.
Me.ComboBox1.List = Range("Matricules")
Par contre, ceci fonctionne très bien :
Me.ComboBox1.List = Range("Matricules").value
Tu fais alors référence au contenu des cellules de la page et non au "Range"
La propriété par défaut d'un "Range" est value lorsqu'elle n'est pas
mentionnée. Cependant dans certaines circonstances cela ne fonctionne
pas sans explicitement stipuler la propriété de l'objet range doit
retournée.
C'est une bonne habitude de spécifier la propriété de l'objet bien que
ce soit plus long à écrire! ;-)
MichD