[VB Access] - Problème de Recordset

Fermé
skanel Messages postés 13 Date d'inscription lundi 13 septembre 2004 Statut Membre Dernière intervention 6 octobre 2004 - 29 sept. 2004 à 17:24
 mohammed - 4 oct. 2004 à 22:17
Bonjour,

J'ai un GROS problème! Je cherche à travailler sur une série de table en lecture et en écriture, mais une erreur apparaît invariablement lors de l'initialisation d'un Recorset (Erreur d'exécution 3001 : Argument non valide).

Voilà mes déclarations :

Private Sub C_Lancement_Click()

Dim MaDB As DAO.Database
Dim TRefer As Recordset
Dim Temp1 As Recordset
Dim Temp2 As Recordset
Dim Result As Recordset

Dim URR As String, FullName As String, TypeCarte As String
Dim PartNumber As String, Lot As String, Quantite As String
Dim Total As String

'***** INITIALISATION DES VARIABLES *****
Set MaDB = CurrentDb()
Set TRefer = MaDB.OpenRecordset("T_URR_Lots", OpenRecordset)        'Première ligne d'apparition de l'erreur
Set Temp1 = MaDB.OpenRecordset("T_Temp1", OpenRecordset)
Set Temp2 = MaDB.OpenRecordset("T_Temp2", OpenRecordset)
Set Result = MaDB.OpenRecordset("T_Resultat", dbOpenRecordset)




J'ai déjà regardé partout où je pouvais, j'ai rajouté toutes les bibliothèques qui allaient bien (Microsoft DAO 3.6 Object Library et Microsoft ActiveX Data Objects 2.5 Library), mais il n'y a toujours pas moyen de résoudre mon problème.

QUE DOIS-JE FAIRE??? AIDEZ-MOI, SVP!!
A voir également:

9 réponses

Salut ,

Tu étais sur la bonne piste lorsque tu as été dans les bibliothèques...
En fait il existe un "conflit" entre "recordset" de la référence DAO (celui que tu utilises) et celui de la référence ADO.
Donc tu vas dans les refs et tu décoches "Microsoft ActiveX Data Object library" et normalement c'est ok.
1
skanel Messages postés 13 Date d'inscription lundi 13 septembre 2004 Statut Membre Dernière intervention 6 octobre 2004
30 sept. 2004 à 10:04
Hello

En effet, ça marche maintenant... Sauf que je ne sais pas coment on récupère des valeurs...

Je voudrais ranger des valeurs de la table, que je lis grâce à
Do While TRefer.EOF = False
, récupérer les valeur des champs de TRefer. J'ai 4 champs (URR, Lot, Département et FullName) que j'aimerai ranger dans des variables locales (portant le même nom).

J'ai bêtement fait URR = TRefer.URR mais c'est sans succès.

Je dois avouer que je suis une débutante et que ça fait que 2 semaines que je bosse là dessus, alors je m'excuse si la question est un peu bêbête.


Merci pour la premuère réponse et d'avance aussi !
0
Salut,

A mon avis tu devrais te trouver un tutorial sur le vba ;).
Pour récupérer les valeurs d'un objet de type recordset:

Trefer.Fields("nomDuChamp").Value
0
merci les gars vous m'avez permis de resoudre un probleme d'acces aux données qui me fatiguais depuis.
1000 fois merci pour l'info sur les librairies
0

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

Posez votre question
skanel Messages postés 13 Date d'inscription lundi 13 septembre 2004 Statut Membre Dernière intervention 6 octobre 2004
1 oct. 2004 à 10:31
Justement, je cherche un bon tutoriel VBA qui a tout dedans, peut-être que tu saurais me dire lequel est le mieux?... :D

Et merci pour ta patiente, ô sage maître du VB
0
Bonjour il y a des exemple et explication sur ce site en anglais parcontre

http://www.fontstuff.com/vba/index.htm
0
Salut. Voici un autre site qui j'espere te satisfera.( en tout cas c'est ce site qui m'aide souvent)

http://www.info-3000.com/access/index.php
0
surement que tu dois avoir un recordset de trop . tu dois decocher une des references pour pouvoir enlever le mauvais recordset.

la methode que tu peus utiliser est
Set MaDB = CurrentDb()
Set TRefer = MaDB.OpenRecordset("T_URR_Lots")
0
salut,
je crois que les recordset sont déclarer comme suit:
Dim TRefer As DAO.Recordset
Dim Temp1 As DAO.Recordset
Dim Temp2 As DAO.Recordset
Dim Result As DAO.Recordset
a+.
Merci
0