requete SQL avec VB

requete SQL avec VB - SQL/NoSQL - Programmation

Marsh Posté le 02-03-2006 à 12:19:25    

Bonjour à tous,
 
Je débute dans la programmation et je connais mes premières galères....
Alos voilà mon problème: je veux faire une requete SQL (pour interroger une base de données access) via VB et renvoyer le résultat sous excel.
J'ai fait tous les paramétrages (acces aux librairies) mais c'est la requete en elle même qui me pose problème.
voilà où j'en suis:
 
Sub ExtractFromAccess_DAo()
Dim Db1 As Database
Dim qdf As QueryDef
Dim rs1 As Recordset
Dim chSQL As String
 
Set Db1 = DBEngine.OpenDatabase("C:\Documents and Settings\Propriétaire\Mes documents\extr31bis.mdb" )
Set rs1 = Db1.OpenRecordset("SELECT * FROM [titi] WHERE [trade ID]>#01/03/2006#" )
 
Set qdf = Db.CreateQueryDef([Date], chSQL)
 
'j'exporte vers le fichier
DoCmd.OutputTo acOutputQuery, [Date], acFormatXLS, "C:\Documents and Settings\Propriétaire\Mes documents\resultat.xls", False
Set qdf = Nothing
 
End Sub
 
La ligne en rouge bloque! (en fait je veux créer une nouvelle requete s'appelant "date".
Ensuite, il me dit ne pas connaitre "Date" => mais c'est le nom que je veux donner à ma nouvelle requete donc forcément il ne la connait pas. J'ai donc du faire une erreur quelque part....
 
Si qqun peut m'aider ça serait vraiment sympa...
Merci d'avance à ceux qui se pencheront sur mon p'tit problème  

Reply

Marsh Posté le 02-03-2006 à 12:19:25   

Reply

Marsh Posté le 02-03-2006 à 15:52:50    


Set qdf = Db1.CreateQueryDef([Date], chSQL)    
 
 
 :D

Reply

Marsh Posté le 05-03-2006 à 11:08:30    

merci pour ta remarque mais j'ai déjà corrigé l'erreur.
En fait ce que je ne comprends pas bien c'est comprends introduire la

Reply

Marsh Posté le 05-03-2006 à 11:12:22    

désolée un petit loupé !!!
je reprends donc...
ce que je ne comprends pas bien c'est comment introduire la requete SQL dans le code?
Est ce que je dois l'écrire deux fois?
une 1ere fois dans
Set rs1 = Db1.OpenRecordset("SELECT * FROM [titi] WHERE [trade ID]>#01/03/2006#" )  
et une 2ème dans:
chSQL = "SELECT * FROM [titi] WHERE [trade ID]>#01/03/2006#"
 
Sais tu comment initialiser une requete SQL?
et comment l'activer ensuite?
 
merci bcp !

Reply

Marsh Posté le 05-03-2006 à 11:38:34    

Code :
  1. Dim MaBaseDeDonnées As DataBase
  2. Dim MonRecordSet As RecordSet
  3. Set MaBaseDeDonnées = OpenDataBase("c:\mabase.mdb",False)
  4. Set MonRecordSet = MaBaseDeDonnées.OpenRecordSet("SELECT * FROM [titi] WHERE [trade ID]>#01/03/2006#",dbOpenDynaset)
  5. While Not MonRecordSet.EOF
  6.    ' Action
  7.  
  8.    MonRecordSet.MoveNext
  9. Wend
  10. MonRecordSet.Close


Message édité par Profil supprimé le 05-03-2006 à 11:38:48
Reply

Sujets relatifs:

Leave a Replay

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