La fonction distinct en vb6

Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   -  
Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour

J'ai un petit probléme avec la fonction "distinct"
Ce que je savais de cette fonction, est qu'elle évite le doublon dans une combox.
Ma constation est qu'elle efficace seulement quant un mot se répete 2 fois, alors que dans le cas où
un mot se répéte plus que 2 fois, la fonction "Distinct" élimine un élément.

Y'a t il une solution à cette faille ?

Je mets à votre disposition mon code:

cmbTravaux.Clear

SQLs = "select Distinct(Travaux) from TableTravaux where (Societe='" & CStr(VarSociete) & "')"

If RS.State = adStateOpen Then RS.Close
RS.Open SQLs, DB, adOpenKeyset, adLockPessimistic

Do Until RS.EOF

cmbTravaux.AddItem (RS![Travaux])

RS.MoveNext
Loop
RS.Close


Merci d'avance pour toute réponse

1 réponse

  1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
     
    Bonjour,
    Ta question ne concerne pas le VB ... mais le SQL (autre forum...)
    Quoi qu'il en soit, la fonction DISTINCT s'utilise en général avec la fonction GROUP BY
    par exemple :
    SELECT DISTINCT(Travaux )
    FROM TableTravaux
    WHERE Societe='" & CStr(VarSociete) & "'
    GROUP BY  Travaux"
    

    0
    1. jordane45 Messages postés 30426 Date d'inscription   Statut Modérateur Dernière intervention   4 830
       
      Tu noteras au passage que le code que je t'ai donné est en couleur....
      Pour ça il faut correctement utiliser les balises de code en y précisant le "langage"
      Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

      Merci de le faire à l'avenir.
      0
    2. Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   2
       
      Bonjour,

      Avant tout un grand merci pour votre réponse et pour m'avoir orienter vers le forum adéquat.
      cela dit, je vous promets que, pour mon code envoyé ci haut, j'ai suivi vos recommandations à la lettre, j'ai sélectionné le code, puis j'ai cliqué sur l’icône <> et puis sélectionné Basic.
      Si jamais, ça n'a pas réussi, ou c'est moi qui n'a pas bien sélectionné le texte ou je n'ai pas encore bien assimilé
      l'exemple envoyé

      En tout mes sincères excuses
      0
    3. Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   2
       
      Re bonjour

      Voilà j'ai essayé votre proposition et ça n' a pas marché.
      Je voulais posté ce probléme sur le forum SQL mais je n'ai pas trouvé.

      Merci de m'orienter
      0
    4. f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 717
       
      Bonjour,

      J'ai essaye votre code dans le projet que vous m'avez passe et y a aucun problème deux ou x "doublons" ca marche et je ne vois pas pourquoi ca ne marcherait pas!!!!!
      0
    5. Lenouveauapprenti Messages postés 306 Date d'inscription   Statut Membre Dernière intervention   2
       
      Bonjour

      Le code marche bien. C'est de ma faute. Je n'ai pas fais attention à un E sans accent en fin de la chaîne, alors que les autres sont avec E accent


      Merci pour tout
      0