Eléments d'un tableau structuré pour remplir ComboBox VBA

Bonjour à tous,

Comme dit dans le titre j'aimerai récupérer les éléments d'un tableau structuré dans mon fichier Excel (le tableau "PersonnelTableau" de la feuille "Données") pour les mettre dans une ComboBox.

J'ai vu sur d'autres forums que le meilleur moyen pour ça était de faire boucler les comboBox.addItem sur le nombre de lignes de mon tableau. Sauf que ce tableau n'est pas sur la première ligne de la feuille et je n'arrive pas à récupérer la première ligne du tableau (je tiens à faire comme ça car si quoi que ce soit bouge dans la feuille, je n'aurai pas à remodifier mon code alors que si j'utilise juste "E7" comme première cellule du tableau, tout risque d'être modifié si l'utilisateur change quoi que ce soit dans la feuille).

  • Déja, existe-t-il un moyen simple de dire comboBox.addItem "Les éléments de mon tableau" (en restant dynamique si une ligne est ajoutée au tableau) ?
  • Si non comment est-ce que je peux récupérer la première et la dernière ligne de mon tableau structuré (Pareil, de manière dynamique si l'ordonnancement de la feuille change)
  • Je pourrai aussi simplement remettre mon tableau sur la première ligne de la feuille mais si l'utilisateur ajoute une colonne, pareil, le code risque de ne plus fonctionner. (Et aussi comme j'ai passé autant de temps à chercher une solution, j'aimerai bien en trouver enfin une )

Si quelqu'un a des éléments de réponse, ça m'aiderait beaucoup !

Bonne soirée,

Romain

34test.xlsm (34.43 Ko)

Bonjour

Comme dit dans le titre j'aimerai récupérer les éléments d'un tableau structuré dans mon fichier Excel (le tableau "PersonnelTableau" de la feuille "Données") pour les mettre dans une ComboBox.
....

Déja, existe-t-il un moyen simple de dire comboBox.addItem "Les éléments de mon tableau" (en restant dynamique si une ligne est ajoutée au tableau) ?

De ce que j'ai compris, vous voulez alimenter la combo de votre USF.
Si oui, mettez ce code dans votre USF

Private Sub UserForm_Initialize()
On Error Resume Next
With Sheets("Données").ListObjects("PersonnelTableau")
    If .ListRows.Count > 1 Then
        PersonnelComboBox.List = .ListColumns(1).DataBodyRange.Value
    Else: PersonnelComboBox.AddItem .DataBodyRange(1, 1).Value
    End If
End With
End Sub

Si non comment est-ce que je peux récupérer la première et la dernière ligne de mon tableau structuré (Pareil, de manière dynamique si l'ordonnancement de la feuille change)

Il faudrait en savoir un peu plus sur ce que vous voulez faire

Un lien intéressant sur les tableaux structurés et réalisé par Thev --> https://forum.excel-pratique.com/astuces/tableau-structure-instructions-vba-specifiques-a-cet-objet-... et aussi dans ce lien le tuto de Pedro22

si ok et terminé

Crdlt

Bonsoir,

Dan bonsoir,

je vous ai fait un petit fichier pour comprendre la "puissance" des tableaux structurés et leur simplicité :

155test-lrd.xlsm (23.19 Ko)

@ bientôt

LouReeD

Bonjour à tous les deux, tout d'abord Dan, merci, c'est exactement ce que je recherchais. Merci pour ces liens et pour votre fichier LouReeD, je vais regarder tout ça.

Bonne journée,

Romain

Bonsoir,

merci pour votre retour et vos remerciements !

@ bientôt

LouReeD

Rechercher des sujets similaires à "elements tableau structure remplir combobox vba"