access vba recordset

access vba recordset - VB/VBA/VBS - Programmation

Marsh Posté le 18-12-2015 à 09:05:04    

Je veux créer un recordset avec une requête (R_reçu_fiscal_new_cot2) pour ensuite faire des opérations diverses. Voici le début de mon code
          Dim enr As Recordset
          DoCmd.SetWarnings False
          enr = CurrentDb.OpenRecordset("R_reçu_fiscal_new_cot2" )
J'obtiens le message suivant : Utilisation incorrecte de la propriété
Pouvez-vous m'aider car j'ai cheché sur Internet et mon instruction me semble correcte
merci
pdm69

Reply

Marsh Posté le 18-12-2015 à 09:05:04   

Reply

Marsh Posté le 18-12-2015 à 09:30:26    

Et si tu fais un truc du style :
 

Code :
  1. Set maConnexion= New ADODB.Connection
  2. Set monRecord= New ADODB.Recordset
  3. monRecord.Open "R_reçu_fiscal_new_cot2", maConnexion, , , adCmdText


 
PS : pense à utiliser les balises cpp/cpp pour formater ton code.

Reply

Marsh Posté le 18-12-2015 à 16:33:32    

Ma requête sélectionne un ensemble d'enregistrements que dans la suite du programme je souhaite balayer avec une séquence qui commence par
    With enr
    .movefirst
    Do While not.EOF
 
D'après moi, la séquence
          Dim enr As Recordset
          enr = CurrentDb.OpenRecordset("marequête" )  
devrait marcher.
Que se passe-t-il ?
Ton code retourne-t-il un ensemble d'enrigistrements?
Quelles déclarations faut-il faire Dim ...   ?

Reply

Marsh Posté le 21-12-2015 à 08:30:30    

Il y a plein de raisons pour lesquelles ça pourrait ne pas fonctionner : pas la bonne version d'Office (OpenRecordset ne s’applique qu'à partir d'Office 2013), mauvaise déclaration de CurrentDb, etc ...
 
C'est pour cela qu'en scindant correctement les instructions, cela permet généralement de mieux cerner le problème.

Reply

Marsh Posté le 08-01-2016 à 22:10:22    

Je ne suis pas expert en programamtion  informatique mais j'utilise la manière suivante  si cela peut t'aider:
 
Il faut cependant vérfier que ta base soit en .mdb ( version 2000 )
Que tu es ajouté les references lies a l'ADO connection , et ADO reccordset
 
 

Code :
  1. Dim Cn As ADODB.Connection
  2. Dim rst As ADODB.Recordset
  3. Dim reqsql_str As String
  4. Set Cn = New ADODB.Connection
  5. Cn.Provider = "Microsoft.jet.oledb.4.0"
  6. Cn.Properties("Data Source" ) = "C:\Users\Kevin\Documents\20160108_BDD_PERSO.MDB"
  7. Cn.Open
  8. For x = 2012 To 2020
  9.     For i = 1 To 12
  10.        reqsql_str = " INSERT INTO Temps(Annee,Mois) VALUES ( " & x & "," & i & " )"
  11.        
  12.         Set rst = Cn.Execute(reqsql_str)
  13.     Next i
  14. Next x
  15. Cn.Close



---------------
"Nous ne devons jamais verser de larmes. Les larmes ne sont rien d'autre que la défaite du corps sur le cœur. Elles constituent la preuve que garder un cœur ne sert à rien d'autre qu'à s'affaiblir"
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed