Remplissage Datagrid par DAO

Signaler
Messages postés
93
Date d'inscription
jeudi 13 janvier 2005
Statut
Membre
Dernière intervention
27 février 2005
-
Messages postés
1788
Date d'inscription
mardi 7 novembre 2000
Statut
Membre
Dernière intervention
11 mars 2006
-
bonjour



j'aurais voulu avoir un exemple ou un lien qui pourrait me permettre de
comprendre comment remplir un datagrid sans passer par la methode ADO

5 réponses

Messages postés
630
Date d'inscription
samedi 15 février 2003
Statut
Modérateur
Dernière intervention
9 octobre 2011
1
Aucun interet d'utiliser Datagrid.

Utilise plutôt un listview.

Pour la lecture des données, recherche des infos sur Recordset...

Le moteur de recherche de VBfrance est capable de te donner des liens

exemple http://www.vbfrance.com/code.aspx?ID=4609

sinon recherche des exemples base de données sans ADO

Juste faites-le
Messages postés
93
Date d'inscription
jeudi 13 janvier 2005
Statut
Membre
Dernière intervention
27 février 2005

non non, si j'utilise un datagrid, c'est que je veux vrement passer par
là, puisque je veux venir modifier et suprimer des elements de mon
tableau.

mon probleme, quand je fais : set datagrid.datasource =
recordset, mon datagrid ne ce remplis pas, alor que le recordset
fonctionne tres bien.

Puis quand je veux voir dans la fenetre d'execution, mon datagrid, j'ai
un message d'erreur qui me dit: jeu d'enregistrement insuffisant.
je crois qu'il ne veux pas prendre en compte mon recordset.
Messages postés
630
Date d'inscription
samedi 15 février 2003
Statut
Modérateur
Dernière intervention
9 octobre 2011
1
De mémoire, un datagrid à besoin d'une connection et d'une instruction définissant les données à afficher...

Juste faites-le
Messages postés
185
Date d'inscription
dimanche 29 juin 2003
Statut
Membre
Dernière intervention
20 juin 2013

Bonjour,

As-tu relié ta datagrid à 1 controle DATA, car dans ce cas la datagrid est dépendante et ça marche tout seul. Bien sûr tu dois lier le controle DATA à ton recordset.
Pour lier le controle DATA :

set datCtrl.recordset = RsX

où datCtrl est le nom de ton controle data et RsX ton recordset.

Cordialement
Messages postés
1788
Date d'inscription
mardi 7 novembre 2000
Statut
Membre
Dernière intervention
11 mars 2006
26
Au cas où tu voudrais utliser une ListBox, suivant le programme que tu réalise,
voici un petit code intéressant.

Private Sub Command1_Click()
If List1.ListCount >= 1 Then
'If no selection, choose last list item.
If List1.ListIndex = -1 Then
List1.ListIndex = List1.ListCount - 1
End If
List1.RemoveItem (List1.ListIndex)
End If
End Sub

Private Sub Form_Load()
Dim adoConnection As ADODB.Connection
Dim adoRecordSet As ADODB.Recordset
Dim sConnectionString As String
Set adoConnection = New ADODB.Connection
Set adoRecordSet = New ADODB.RecordsetsConnectionString " Provider Microsoft.jet.OLEDB.3.51;" & " Data Source = C:\Program Files\Microsoft Visual Studio\vb98\Nwind.mdb"
adoConnection.Open sConnectionString
adoRecordSet.Open "Produits", adoConnection
Do Until adoRecordSet.EOF
List1.AddItem adoRecordSet("Quantité par unité")
List1.ItemData(List1.NewIndex) = adoRecordSet("Prix unitaire")
adoRecordSet.MoveNext
Loop
End Sub

'Placez une listBox sur la Form et un Label
'N'oubliez pas de déclarer dans les références
'ActiveX Data Objects 2.0 Lybrari
' et DAO 3.51 Object Lybrari


Private Sub List1_DblClick()
Dim msg As String
msg = List1.ItemData(List1.ListIndex) & ""
Label1.Caption = msg
End Sub