Résultats dans ListBox

Résolu
cs_kirikou95 Messages postés 60 Date d'inscription mercredi 3 janvier 2007 Statut Membre Dernière intervention 27 février 2009 - 28 nov. 2007 à 11:34
cs_kirikou95 Messages postés 60 Date d'inscription mercredi 3 janvier 2007 Statut Membre Dernière intervention 27 février 2009 - 28 nov. 2007 à 13:10
Bonjour,

Je suis de retour avec mes questions pour ceux qui peuvent m'aider...

Soit ma base :  'Base.mdb'
Table : CDROM(NomCD,LibelleCD,DatePret)

Je voudrais afficher dans ma ListBox 'NomCD'.

J'ai un peu de mal.

Merci de votre aide

Daniel E.

9 réponses

cs_kirikou95 Messages postés 60 Date d'inscription mercredi 3 janvier 2007 Statut Membre Dernière intervention 27 février 2009
28 nov. 2007 à 13:10
Je vais tester aussi ta proposition Exploreur :

Voilà ce que j'ai trouvé, et ça marche. Je mets le code ici pour ceux que ça pourrait aider à l'avenir :

====================================================
Private Sub Form_Load()
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Set cn = New ADODB.Connection
cn.ConnectionString = "Chemin\Base.mdb"
cn.Provider = "Microsoft.jet.OLEDB.4.0"
cn.Open
Set rs = New ADODB.Recordset
rs.Open "select * from DATA", cn, adOpenDynamic, adLockPessimistic

With rs
If .RecordCount <> 0 Then 
         .MoveFirst  
Do While Not .EOF  
        MaListeBox.AddItem .Fields("NomData")  
       .MoveNext   
        Loop
End If
    .Close
End With

End Sub
=====================================================

Daniel E.
3
pneau Messages postés 258 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 27 octobre 2010 5
28 nov. 2007 à 11:57
salut
il faut créer une connexion à ta base access soit manuellement soit en posant un controle ADODC sur ton form.

puis, renseigner le datasource et le datafield sur le controle listbox;
ensuite, cela se fait "tout seul"....

as tu jeter un oeil dans les sources sur le site, il y a plein qui traite de l'accès aux données

Pat

 Don't Worry , Be Happy
0
cs_kirikou95 Messages postés 60 Date d'inscription mercredi 3 janvier 2007 Statut Membre Dernière intervention 27 février 2009
28 nov. 2007 à 12:01
Je n'en ai pas trouvé justement. Voilà pourquoi je posais ma question.
Je vais tester ça !

Merci

Daniel E.
0
pneau Messages postés 258 Date d'inscription mercredi 21 avril 2004 Statut Membre Dernière intervention 27 octobre 2010 5
28 nov. 2007 à 12:01
re,


jette un oeil a ce code



http://www.vbfrance.com/codes/DAO-ALIMENTER-LISTBOX-AVEC-REQUETE-SQL_32724.aspx






Pat

 Don't Worry , Be Happy
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
28 nov. 2007 à 12:11
Salut,

Référence à rajouter :
Microsoft ActiveX Data Objects 2.5 Library

Option Explicit

Dim CnxAdo as New ADODB.Connection
Dim RstAdo as New ADODB.RecordSet
Dim Sql as String

Private Sub Form_Load()
       
    ' Choix du fournisseur
     CnxAdo.Provider = "Microsoft.jet.OLEDB.4.0"
 
    ' chemin de la base pour la connection
     CnxAdo.ConnectionString = CheminDeTaBase
    
   ' Ouverture
     CnxAdo.Open

End Sub

Private command1_Click()
 
 ' Préparation requête
 Sql = "SELECT * FROM CdRom"

    ' Execution requête avec paramètre recordset via CnxAdo
     RstAdo.CursorLocation = adUseClient
     RstAdo.Open Sql, CnxAdo, adOpenDynamic, adLockPessimistic

' Boucle si il y a des records
 While not RstAdo.Eof
        ' Ajout dans ListBox
        If Not IsNull RstAdo.Fields("NomCd") Then TaListbox.AddItem RstAdo.Fields("NomCd") 

Wend

End Sub

Pas testé, mais cela devrait fonctionner.

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
28 nov. 2007 à 12:12
Ben le temps que je tape tout, Pneau(Salut), ma devancer...!

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
cs_kirikou95 Messages postés 60 Date d'inscription mercredi 3 janvier 2007 Statut Membre Dernière intervention 27 février 2009
28 nov. 2007 à 12:15
Message pour pneau :

J'obtiens le message suivant lorsque j'exécute ta source :
_______________________________________________________
Set monRecordset = maBase.OpenRecordset( _
        "SELECT nick FROM users ORDER BY nick", dbOpenSnapshot)



Message : Type de donnée incompatible.
________________________________________________________

Je vais tester ton code Explorateur
Daniel E.
0
cs_kirikou95 Messages postés 60 Date d'inscription mercredi 3 janvier 2007 Statut Membre Dernière intervention 27 février 2009
28 nov. 2007 à 12:29
Explorateur, j'ai un message d'erreur :

Sur cette ligne :
" If Not IsNull rstado.Fields("NomCd") Then List1.AddItem RstAdo.Fields("NomCd") "

Il me dit :
" Erreur de compilation
          Attendu : Then ou GoTo "

Merci

Daniel E.
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
28 nov. 2007 à 13:07
Re,

Essaye cela à la place :
If Not Rstado.Fields("NomCd") = VbNullString Then List1.AddItem RstAdo.Fields("NomCd")

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
Rejoignez-nous