OVH Cloud OVH Cloud

Generer des requetes

4 réponses
Avatar
Arpat
Bonjour,
Dans une table, je stocke mes requetes (un champs NOMREQUETE et un champs
TEXTESQL)
je voudrais cree un bout de code qui me creerait mes requetes dans la base
de mon choix. 'Dans la base de mon choix', je sais faire, par contre creer
les requetes, là je patine :-)

merci pour vos idées

Arpat

4 réponses

Avatar
Gafish
Arpat wrote:
Bonjour,


Bonjour

Dans une table, je stocke mes requetes (un champs NOMREQUETE et un
champs TEXTESQL)
je voudrais cree un bout de code qui me creerait mes requetes dans la
base de mon choix. 'Dans la base de mon choix', je sais faire, par
contre creer les requetes, là je patine :-)


Soit "taBase" ta base de données, essaie quelque chose comme :

Dim nouvelleRequete As QueryDef
Set nouvelleRequete = taBase.CreateQueryDef("NomDeLaRequete")
nouvelleRequete.sql = "SELECT * FROM [TaTable];"
Set nouvelleRequete = Nothing
Set taBase = Nothing

Arnaud
--
Charte du forum : http://www.mpfa.info/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Eric
Bonjour,

Un truc du genre, en supposant que la nouvelle base contient les tables
appelées par les requêtes à créer:
Sub zz()
Dim qry As DAO.QueryDef
Dim rst As DAO.Recordset
Dim NewBase As DAO.Database
Set NewBase = DBEngine.Workspaces(0).OpenDatabase("C:Documents and
SettingsEricMes documentsbd1.mdb") ' <--- A adapter
Set rst = CurrentDb.OpenRecordset("LaTable") <-- A adapter
Do While Not rst.EOF And Not IsNull(rst(0)) And Not IsNull(rst(1))
Set qry = NewBase.CreateQueryDef(rst(0), rst(1))
rst.MoveNext
Loop
Set rst = Nothing
Set qry = Nothing
NewBase.Close
Set NewBase = Nothing
End Sub

Bonjour,
Dans une table, je stocke mes requetes (un champs NOMREQUETE et un champs
TEXTESQL)
je voudrais cree un bout de code qui me creerait mes requetes dans la base
de mon choix. 'Dans la base de mon choix', je sais faire, par contre creer
les requetes, là je patine :-)

merci pour vos idées

Arpat




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Eric
.../...

Je suis parti du fait que la table ne contient que 2 champs (et dans cet
ordre: NOMREQUETE et TEXTESQL), d'où l'utilisation de rst(0) et rst(1)
Si ce n'est pas le cas, alors remplacer respectivement :
rst(0) par rst!NOMREQUETE et rst(1) par rst!TEXTESQL

--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Avatar
Arpat
Merci, c'est parfait, ça marche du tonnerre !!


"Eric" a écrit dans le message de news:

.../...

Je suis parti du fait que la table ne contient que 2 champs (et dans cet
ordre: NOMREQUETE et TEXTESQL), d'où l'utilisation de rst(0) et rst(1)
Si ce n'est pas le cas, alors remplacer respectivement :
rst(0) par rst!NOMREQUETE et rst(1) par rst!TEXTESQL

--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr