Combobox et tableau

Bonjour à tous

J'ai un grand tableau de données (situé dans feuil1).

J'ai créé 5 combobox qui contiennent chacune la liste située dans une colonne du tableau (non prenom date telephone et mail) car je veux afficher une fiche "produit" (useform) avec la possibilité d'afficher les données d'une ligne du tableau en fonction d'un des 5 critères.

Ca marche sans pb.

Sauf que pour simplifier ma recherche dans les combobox, je les trie ca marche toujours.

MAIS !!!!

bien sûr, les indices des combobox ne correspondent plus et ma fiche "produit" est erronée.

Comment faire?

Faut il utiliser une combobox multicolonne ( j'ai pas encore regardé)

Serait il plus rapide de créer 5 tableaux triés (chacun en fonction d'un de mes 5 critères) et de remplir la fiche à partir du tableau concerné lors du choix d'une des 5 combobox.

J'espère avoir été clair

Merci pour votre aide

Bonjour

Sarl54 a écrit :

J'ai un grand tableau de données (situé dans feuil1).

On peut le voir ?

Bye !

Re

compliqué car ce ne sont que des ébauches pour le moment

en gros:

Nom Prénom Adresse Tél Date Mail Caution Vol ....

sont les titres des colonnes

J'ai créé un useform où j'ai 5 combobox

une sur le nom , une sur le tél , une sur la date , une sur le mail , une sur le Vol

j'ai en suite des textbox que je remplis en fonction du choix effectué dans telle ou telle combobox

Tout fonctionne sauf que si je choisis de trier item des combobox, afin de faciliter le choix

mes renseignements des textbox sont erronés ce qui est logique en soit.

Je ne sais pas comment faire pour solutionner d'où ma question initiale.

Si ça n'est pas clair j'enverrai un fichier mais qu'il faut que je fabrique.

Merci à vous

Bonjour,

On ne peut évaluer ton problème sans voir concrètement comment il se présente !

D'une façon générale, ce que je peux dire d'après tes quelques indications :

  • 5 ComboBox c'est superflu ! Un seul suffit : tu n'en utiliseras qu'un à la fois.
  • Il sera nécessaire de trier ta base selon le critère de recherche que tu utiliseras, cela se fait avant d'affecter la liste au ComboBox, à l'ouverture, et il sera sans doute utile de prévoir un changement de mode de recherche, en cours d'utilisation du formulaire : élimination de la liste en cours, nouveau tri de la base, réaffectation de liste (sans décharger le formulaire).
  • Ce, que tu optes pour un chargement multi-colonne ou pas.
  • En multicolonne, tu auras tous les éléments de recherche en même (bien qu'on puisse le cas échéant masquer des colonnes), cela peut faire une ligne assez longue avec des colonnes larges... Si tu n'affiches qu'une colonne, il te faut prévoir d'afficher dans des TextBox les autres éléments (faciles à récupérer immédatement à la sélection puisque ta base est triée selon ton mode de recherche).
  • Les choix dépendent aussi de l'utilisation ultérieure du résultat de la recherche...

Cordialement,

Ferrand

Bonjour

merci pour ta réponse,

après plus de 6 heures passées à faire des recherches, j'ai trouvé 2 possibilités ( j'aimerais savoir faire les deux même

s'il y a sans doute autre chose à faire)

Méthode1:

Je vais utiliser une combobox 5 colonnes qui récupère 5 colonnes d'un grand tableau ( contenant plus de 10 colonnes et plus de 1000 lignes qui peuvent augnmenter) situé dans la feuille 1 de mon classeur.

Premier point:

Quelle est serait alors le code pour lui dire que

la colonne 1 de ma combobox1 récupère la colonne A (qui correspondra au numéro de la ligne d'enregistrement du tableau)

la colonne 2 de ma combobox1 récupère la colonne C

la colonne 3 de ma combobox1 récupère la colonne F

la colonne 4 de ma combobox1 récupère la colonne G

la colonne 5 de ma combobox1 récupère la colonne I

Deuxième point:

Est-il possible de créer 4 combobox créées à partir de combobox1 :

combobox2 où ne figurent que colonnes A et C de combobox1

combobox3 où ne figurent que colonnes A et F de combobox1

combobox4 où ne figurent que colonnes A et G de combobox1

combobox5 où ne figurent que colonnes A et I de combobox1

Troisième point:

Ensuite, j'ai trouvé une fonction qui trie une combobox ce qui sera plus pratique pour effectuer un choix dans mes combobox.

On appelle cette fonction avec: Me.ComboBox12.List = ListSort(Me.ComboBox2.List)

ComboBox2 n'est pas triée , ComboBox12 est triée

Function ListSort(liSte)

Dim First As Integer, Last As Integer

Dim I As Integer, J As Integer

Dim Temp

First = LBound(liSte)

Last = UBound(liSte)

For I = First To Last - 1

For J = I + 1 To Last

If liSte(I, 0) > liSte(J, 0) Then

Temp = liSte(J, 0)

liSte(J, 0) = liSte(I, 0)

liSte(I, 0) = Temp

End If

Next J

Next I

ListSort = liSte

End Function

Je ne sais pas sur quelle colonne est effectué le tri.

Est-il possible de modifier cette fonction pour choisir la colonne sur laquelle se base le tri?

Quatrième point:

Comment n'afficher qu'une des colonnes d'une combobox (multicolonne) afin que le choix se fasse sur la deuxième colonne

Cinquième point:

j'affiche (dans des textbox) à l'aide du renseignement(indice) situé dans la colonne masquée si possible ( qui correspond à la colonne A du tableau) les renseignements de la combox1 à 5 colonnes (situés dans la ligne où il y a le même indice)

je m'explique:

Combox1

colonne1 colonne2 colonne 3 ...

1 DUPONT 13354

2 RENE 89

3 ANDRE 999

Combox12(triée)

colonne1(masquée) colonne2

3 ANDRE

1 DUPONT

2 RENE

je choisis RENE

je récupère dans TEXTBOX 1 à 5

TEXTBOX 1: 2

TEXTBOX 2: RENE

TEXTBOX 3: 89

Méthode 2:

Mes 5 combobox sont crées à partir du tableau , je les trie et je vais chercher les renseignements à afficher directement dans le tableau. Ca semble plus court dans l'explication mais ca oblige à aller chercher 10 000 renseignements (5 combobox*2 colonnes*1000 lignes) au lieu de 5000 avec la combobox 5 colonnes

Voilà j'ai trouvé plein de renseignements sur le forum mais dur dur de mette tout bout à bout.

J'aimerais vraiment savoir faire les deux

Merci pour votre aide.

re

petite precision sur les 5 combobox

en fait il en faut 5 car je veux pouvoir faire une recherche soit sur le N° d'enregistrement (colonne A)

soit sur le nom

soit sur le telephone

soit....

d'où 5 combobox suivant ce que mon choix de critère

voili voilà

Bon courage ! C'est toi qui bâtis à ta convenance.

Je te conseilles de passer en revue (et en détail) les propriétés du ComboBox, et de bien mémoriser leurs interactions qui sont nombreuses. L'aide est utile et il faut s'en servir.

Bonne journée

Ferrand

Certes mais je ne sais pas tout faire

j'ai posé qqs questions , j'ai besoin d'aide

merci d'avance

Séb

et avec un fichier c'est mieux

76sebastien.xlsm (21.39 Ko)
Rechercher des sujets similaires à "combobox tableau"