novicekiller
Messages postés64Date d'inscriptiondimanche 17 août 2003StatutMembreDernière intervention23 juillet 2006
-
20 juil. 2006 à 02:39
bouv
Messages postés1411Date d'inscriptionmercredi 6 août 2003StatutMembreDernière intervention 3 mars 2019
-
20 juil. 2006 à 18:57
salut a tous,
-----------------------------------------------------------------------------------------------------
conte = Form1.cmb_compte.Text
Dim i As Integer
Grille1.Rows = 1
Grille1.ColWidth(0) = 500
Grille1.TextArray(faIndex(0, 0)) = conte
Grille1.TextArray(faIndex(0, 1)) = "Libellé"
Grille1.TextArray(faIndex(0, 2)) = "débit"
Grille1.ColWidth(0) = 1550
Grille1.ColWidth(1) = 2650
Grille1.ColWidth(2) = 650
i = 0
Set db = OpenDatabase(App.Path & "\gestion_97.mdb")sql "SELECT * FROM tbl_gestion WHERE compte conte ORDER BY id DESC"
Set rs = db.OpenRecordset(sql, dbOpenDynaset)
For i = 1 To rs.RecordCount
Grille1.Rows = Grille1.Rows + 1
Grille1.TextArray(faIndex(i, 0)) = rs.Fields("date")
Grille1.TextArray(faIndex(i, 1)) = rs.Fields("motif")
Grille1.TextArray(faIndex(i, 2)) = rs.Fields("argent")
rs.MoveNext
Next
rs.Close
------------------------------------------------------------------------------------------
voila ca met une erreur 3061 : trop peu de paramètres. 1 attentu et ca selectionne Set rs = db.openrecordset(sql, dbopendynaset)
bouv
Messages postés1411Date d'inscriptionmercredi 6 août 2003StatutMembreDernière intervention 3 mars 20191 20 juil. 2006 à 08:27
Première remarque : tu devrai oublié le DAO et passer à l'ADO.
Je ne connais pas vraiment les commandes DAO, mais quelques remarques me viennent.
1°- Commence par remplacer ta requete par
"SELECT * FROM tbl_gestion WHERE compte = " & conte & " ORDER BY id DESC"
2°- Le champs 'compte' de ta table 'tbl_gestion' est-il de type Texte ou Numérique ?
S'il est de type Texte tu doit remplacer ta requete par
"SELECT * FROM tbl_gestion WHERE compte ='" & conte & "' ORDER BY id DESC"
tu remarquera les ' ' qui entourent la valeur de 'conte'
3°- Alors la je suis pas sur de moi car je l'ai précisé je ne connais pas le DAO.
db.OpenRecordset(sql, dbOpenDynaset)
Tu fais un OpenRecordset et tu passe en parametre dbOpenDynaset. Est-ce bien valide ?
novicekiller
Messages postés64Date d'inscriptiondimanche 17 août 2003StatutMembreDernière intervention23 juillet 2006 20 juil. 2006 à 11:21
pour le pb, la 2eme solution c'est bon ;) ! pour le 3, tinquiète pas c'est bien ça ! j'ai toujours utilisé le DAO j'ai apris dessus mais qu'est ce qu'il y a de différent avec le ADO ??
bouv
Messages postés1411Date d'inscriptionmercredi 6 août 2003StatutMembreDernière intervention 3 mars 20191 20 juil. 2006 à 12:12
L'ADO est le successeur du DAO.
C'est un peu comme Windows 98 et XP.
Aujourd'hui DAO n'est plus du tout supporté par microsoft (c'est limite s'il est pas renié) (un peu comme Win98 tu me dira )
Le DAO n'est pas non plus un boulet, mais l'ADO apporte plus de rapidité (surtout sur de grosses requetes), plus de stabilité.....
Et il est à mon sens beaucoup plus simple à utiliser.
Mais le passage se fait très en douceur, les appels se ressembles, les requetes sont exactement les mêmes.
Si tu souhaite un projet, je dois pouvoir trouver ça.