Microsoft 365 Insertion-Tableau & VBA

DARGER

XLDnaute Nouveau
Bonjour à tous,

Je vais avoir besoin de votre aide.
Sur excel, on peut insérer un tableau puis le nommer (ex : "BDD") et les en-têtes de colonnes deviennent automatiquement les en-têtes de champ (ex : BDD[Civilité]).
Le hic est que je ne sais pas comment cela se retraduit en VBA et donc je saisi toutes les instructions [ex : ComboBox1.List = Application.Transpose(Range(BDDCivilité)))] en me disant que c'est dommage de ne pas pouvoir utiliser les caractéristiques ci-dessus désignées :)
Je sais que cela peut fonctionner en renseignant RowSource (dans ce cas on a toutes les valeurs) mais le code combobox1.rowsource = "unique(BDD[Civilité]" ne fonctionne pas.

Pourriez vous m'expliquer comment on peut gérer ces fantastiques tableaux ? ou si on ne peut pas me le dire tout simplement.

Excellent journée à tous.
 

Hasco

XLDnaute Barbatruc
Bonjour,

Vous trouverez dans la doc microsoft tout ce que les 'ListObject' peuvent vous offrir comme méthodes et propriétés :
En français :

et sur la collection des listobjects de la feuille (pour ajout, suppression etc.)
Cordialement
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Je l'indique parce que les méthodes Add de mes deux objets acceptent les entêtes de colonnes du tableau en guise de spécifications de colonnes.
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Remarque : cette écriture a des chances de marcher :
VB:
ComboBox1.List = [BDD[Civilité]].Value
Pour en avoir une version avec valeurs uniques, avec ma fonction SujetCBx :
VB:
ComboBox1.List = SujetCBx([BDD[Civilité]])(0)
Il est aussi possible d'utiliser un LOt
VB:
Dim LOt As ListObject
Set LOt = ListObjects("BDD")
ComboBox1.List = SujetCBx([LOt.ListColumns("Civilité"))(0)
Joignez un classeur si vous voulez que je l'équipe des modules de service nécessaires.
 

Discussions similaires

Statistiques des forums

Discussions
299 930
Messages
1 980 159
Membres
207 010
dernier inscrit
Setry