VB6 Afficher plus d'un élément dans un ListBox [Résolu]

Signaler
Messages postés
926
Date d'inscription
vendredi 10 novembre 2000
Statut
Membre
Dernière intervention
10 septembre 2010
-
Messages postés
926
Date d'inscription
vendredi 10 novembre 2000
Statut
Membre
Dernière intervention
10 septembre 2010
-
Salut....

J'ai regarder quelques programmes sur le site mais je n'y arrive pas...

Je fais une recherche SQL et je veux que par exemple si je recherche le mot Soupe, Mon ListBox affichera tous les éléments qui auront le mot Soupe.

Voici ma commande pour la recherche que j'Mutilise (je ne suis pas certain que je suis correcte)
BD2.Open "SELECT * FROM [Recette] WHERE [Recette] like '%" & txtRecherche.Text & "%'", connection, adOpenDynamic, adLockOptimistic

Et voici le code pour mon ListBox.. Ici je crois qu'il peut y a pparaitre qu'un élément...

Serait-il possible de me dire qu'est ce qui ne fonctionne pas et de me donner un exemple...

Merci d'avance

BDRecetteListView.Open "SELECT * FROM [Recette] WHERE [Recette] like '" & txtRecherche.Text & "'", connection, adOpenKeyset, adLockBatchOptimistic
With ListView1.ListItems.Add(, , IsN(BDRecetteListView!Recette)) 'Colonne 1
.SubItems(1) = IsN(BDRecetteListView!Type) ' Colonne '2
.SubItems(2) = IsN(BDRecetteListView!Volume) ' Colonne 3
.SubItems(3) = IsN(BDRecetteListView!Numero) ' Colonne 4
.SubItems(4) = IsN(BDRecetteListView!Page) ' Colonne 5
.SubItems(5) = IsN(BDRecetteListView!Autre) ' Colonne 6
.SubItems(6) = IsN(BDRecetteListView!Cote) ' Colonne 7
.SubItems(7) = IsN(BDRecetteListView!Note) ' Colonne 8
'.SubItems(8) = IsN(BDRecetteListView![Repas Rapide])
End With
BDRecetteListView.Close

8 réponses

Messages postés
282
Date d'inscription
lundi 29 septembre 2003
Statut
Membre
Dernière intervention
15 août 2012
2
salut, je ne comprend pas pourquoi tu fais 2 requêtes identiques mais bon!

BDRecetteListView.Open "SELECT * FROM [Recette] WHERE [Recette] like '"
& txtRecherche.Text & "'", connection, adOpenKeyset,
adLockBatchOptimistic
'**Si tu as des enregistrments dans ta requête
if BDRecetteListView.recordcount > 0 then
'** Places-toi sur le premier enregistrement
BDRecetteListView.movefirst
'**Tant que tu n'as pas atteint la fin
while BDRecetteListView.eof
'**Ajoutes les infos dans le listview
With ListView1.ListItems.Add(, , IsN(BDRecetteListView!Recette)) 'Colonne 1
.SubItems(1) = IsN(BDRecetteListView!Type) ' Colonne '2
.SubItems(2) = IsN(BDRecetteListView!Volume) ' Colonne 3
.SubItems(3) = IsN(BDRecetteListView!Numero) ' Colonne 4
.SubItems(4) = IsN(BDRecetteListView!Page) ' Colonne 5
.SubItems(5) = IsN(BDRecetteListView!Autre) ' Colonne 6
.SubItems(6) = IsN(BDRecetteListView!Cote) ' Colonne 7
.SubItems(7) = IsN(BDRecetteListView!Note) ' Colonne 8
'.SubItems(8) = IsN(BDRecetteListView![Repas Rapide])
End With
'** Places-toi sur le prochain enregistrement
BDRecetteListView.movenext
'** Boucle de nouveau
loop
BDRecetteListView.Close
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 82 internautes nous ont dit merci ce mois-ci

Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
124
Je dirais plutôt :

while NOT BDRecetteListView.eof

_
Avant de poster dans le forum,
prière d'aller lire ceci :
http://www.codes-sources.com/reglement.aspx
<s></s>
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 82 internautes nous ont dit merci ce mois-ci

Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
124
If BDRecetteListView.RecordCount > 0 Then
BDRecetteListView.MoveFirst
While Not BDRecetteListView.EOF

With ListView1.ListItems.Add(, , IsN(BDRecetteListView!Recette)) 'Colonne 1
.SubItems(1) = IsN(BDRecetteListView!Type) ' Colonne '2
.SubItems(2) = IsN(BDRecetteListView!Volume) ' Colonne 3
.SubItems(3) = IsN(BDRecetteListView!Numero) ' Colonne 4
.SubItems(4) = IsN(BDRecetteListView!Page) ' Colonne 5
.SubItems(5) = IsN(BDRecetteListView!Autre) ' Colonne 6
.SubItems(6) = IsN(BDRecetteListView!Cote) ' Colonne 7
.SubItems(7) = IsN(BDRecetteListView!Note) ' Colonne 8
'.SubItems(8) = IsN(BDRecetteListView![Repas Rapide])
End With

BDRecetteListView.MoveNext

Wend

BDRecetteListView.Close
End If

_
Avant de poster dans le forum,
prière d'aller lire ceci :
http://www.codes-sources.com/reglement.aspx
<s></s>
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 82 internautes nous ont dit merci ce mois-ci

Messages postés
926
Date d'inscription
vendredi 10 novembre 2000
Statut
Membre
Dernière intervention
10 septembre 2010
4
Salut à vous deux...

Bon Hum je le mets où le "Do" Ca me dit qu'il manque un Do car j'ai un Loop dans le code...

J'ai essayé quelque truc (Placer un DO) mais j'ai absolument rien qui apparait dans mon ListView....

P.S. si j'ai plusieurs mots dans une cellule (Access)
ex. Soupe aux Pois et je fais une recherche avec le mot Soupe, est ce que ma requête est capable de me sortir toute les "Cellules" qui contiennent le mot Soupe.. ???

BDRecetteListView.Open "SELECT * FROM [Recette] WHERE [Recette] like '%" & txtRecherche.Text & "%'", connection, adOpenDynamic, adLockOptimistic

If BDRecetteListView.RecordCount > 0 Then
BDRecetteListView.MoveFirst
While Not BDRecetteListView.EOF


With ListView1.ListItems.Add(, , IsN(BDRecetteListView!Recette)) 'Colonne 1
.SubItems(1) = IsN(BDRecetteListView!Type) ' Colonne '2
.SubItems(2) = IsN(BDRecetteListView!Volume) ' Colonne 3
.SubItems(3) = IsN(BDRecetteListView!Numero) ' Colonne 4
.SubItems(4) = IsN(BDRecetteListView!Page) ' Colonne 5
.SubItems(5) = IsN(BDRecetteListView!Autre) ' Colonne 6
.SubItems(6) = IsN(BDRecetteListView!Cote) ' Colonne 7
.SubItems(7) = IsN(BDRecetteListView!Note) ' Colonne 8
'.SubItems(8) = IsN(BDRecetteListView![Repas Rapide])
End With

BDRecetteListView.MoveNext

Loop

BDRecetteListView.Close
End If

Merci d'avance
Messages postés
926
Date d'inscription
vendredi 10 novembre 2000
Statut
Membre
Dernière intervention
10 septembre 2010
4
Rebonjour....

Merci pour ton aide....... Je n'avais pas penser au Wend... :(

Ok mais j'ai toujours rien qui apparait dans mon ListView...

Ma requête peut-elle comporter des erreurs ??????????

BDRecetteListView.Open "SELECT * FROM [Recette] WHERE [Recette] like '%" & txtRecherche.Text & "%'", connection, adOpenDynamic, adLockOptimistic

J'ai pas mal de difficulté avec les requetes SQL

J'Attends de tes nouvelles

merci d'avance
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
124
tu as un champ nommé recette dans ta table recette ?

_
Avant de poster dans le forum,
prière d'aller lire ceci :
http://www.codes-sources.com/reglement.aspx
<s></s>
Messages postés
926
Date d'inscription
vendredi 10 novembre 2000
Statut
Membre
Dernière intervention
10 septembre 2010
4
Effectivement

MA Table se Nomme Recette et dans cette Table j'ai un Champs qui se nomme Rectette

Cela peut-il crééer un conflit ??????
Messages postés
926
Date d'inscription
vendredi 10 novembre 2000
Statut
Membre
Dernière intervention
10 septembre 2010
4
Salut j'ai trouvé...

L'Erreur provenait de cette partie du code

If BDRecetteListView.RecordCount > 0 Then

Merci à toi