none
TRI SUR LISTE DEROULANTE RRS feed

  • Question

  • Bonjour,

    Comment faire pour trier par ordre alphabétique une liste d'élément créée avec la méthode Additem dans une procédure Visual basic sur un formulaire.

    la liste s'affiche mais pas par ordre alphabétique.

    CONFIGURATION. Access 2002 et Visual Basic. version 6.3

    merçi pour votre aide

    TITOUNE

    dimanche 20 février 2011 16:37

Réponses

  • Bonjour TITOUNE,

    Vous auriez du présenter votre problème de cette manière car afin dans ce cas afin que les éléments de votre combobox s'affichent dans l'ordre croissant il vous suffit de mettre comme source de données à votre combobox une requête basée sur la table contenant les chanteurs et ayant une clause "Order by" (trier).

    À titre indicatif, car n'ayant pas la structure de votre base de données, je vais supposé que vous avez une table "Chansons" avec par exemple les champs suivants: "NumChanson", "TitreChanson", "DuréeChanson", "AuteurChanson", "InterpreteChanson". La requête à utiliser serait comme suit:

    SELECT Chansons.InterpreteChansons
    FROM Chansons
    ORDER BY Chansons.InterpreteChansons;
    
    

    Bonne continuation


    En espérant avoir pu rendre service (MehdiH)
    Retrouvez moi sur Office Users
    • Marqué comme réponse TITOUNE mardi 22 février 2011 20:00
    mardi 22 février 2011 08:12

Toutes les réponses

  • Bonjour,

    1. Si vous saisissez les valeurs vous même du style :

    objet.additem "Pommes de terre"
    objet.additem "Tomates"
    objet.additem "Carottes"
    objet.additem "Oignons"

    Le plus simple c'est de trier vous même la liste (réaranger la séquence des commandes) comme ceci par exemple :

    objet.additem "Carottes"
    objet.additem "Oignons"
    objet.additem "Pommes de terre"
    objet.additem "Tomates"

    2. Dans le cas ou la liste est trop longue, utilisez Excel pour la triée. Pour cela copier carrement la liste des instructions dans une colonne, trié la colonne puis réinsérer la liste des instructions.

    3. Dans l'éventualité ou vous souhaitez automatiser le tri, il me semble que vous devriez procéder comme suit:

    1. Transferer le contenu de votre combobox à une liste (un tableau)
    2. Trier le tableau (algo quicksort par exemple)
    3. Vider le combobox
    4. Réimporter le contenu trié du tableau vers votre combobox

    4. Si vous développez votre interface avec VB (et non pas sous Access), vérifiez si l'objet combobox ne dispose pas d'une propriété "SORTED". Si c'est le cas la mettre sur "True"

     


    En espérant avoir pu rendre service (MehdiH)
    Retrouvez moi sur Office Users
    lundi 21 février 2011 08:03
  • Pour medhi.

    Bonjour, à l'aide ..... Dans ma base de données ( j'ai une Table "CHANSONS", un Formulaire "JUKEBOX"  et un COMBOBOX "CHANTEUR")

    comment créer un tableau de CHANTEUR dans Visual Basic de l'application ACCESS.

    J'ai creér un  TABLEAUCHANTEUR(constante) dans une boucle.

    dim TABLEAUCHANTEUR as variant , constante = 825

    Ecris ce code :

    for i = 1 to constante

    chanteurtrouvé =  = DLookup("CHANTEUR", "CHANSONS", "[NUMERO] =" & i)

    CHANTEUR.AddItem chanteurtrouvé

    TABLEAUCHANTEUR(i) = chanteurtrouvé

    next i

    Mais ensuite je ne sais pas comment trier le tableau TABLEAUCHANTEUR par ordre alphabétique.

    Merçi pour votre aide

    TITOUNE

    lundi 21 février 2011 21:46
  • Bonjour TITOUNE,

    Vous auriez du présenter votre problème de cette manière car afin dans ce cas afin que les éléments de votre combobox s'affichent dans l'ordre croissant il vous suffit de mettre comme source de données à votre combobox une requête basée sur la table contenant les chanteurs et ayant une clause "Order by" (trier).

    À titre indicatif, car n'ayant pas la structure de votre base de données, je vais supposé que vous avez une table "Chansons" avec par exemple les champs suivants: "NumChanson", "TitreChanson", "DuréeChanson", "AuteurChanson", "InterpreteChanson". La requête à utiliser serait comme suit:

    SELECT Chansons.InterpreteChansons
    FROM Chansons
    ORDER BY Chansons.InterpreteChansons;
    
    

    Bonne continuation


    En espérant avoir pu rendre service (MehdiH)
    Retrouvez moi sur Office Users
    • Marqué comme réponse TITOUNE mardi 22 février 2011 20:00
    mardi 22 février 2011 08:12
  • Merci beaucoup

    Pour MEHDIH

    Je suis arrivé au résultat que je cherchais.

    De la part de TITOUNE

    mardi 22 février 2011 20:04