OVH Cloud OVH Cloud

Problème avec DeleteQueryDef

5 réponses
Avatar
jmlm
Bonjour,
je voudrais utiliser ce code pour mettre à jour une base de données sur un
dique amovible, mais DeleteQueryDef ne passe pas à la compilation, alors que
l'objet requete est bien crée.
Cordialement, et jouyeuses fêtes.

------------------------------
---------------------------------------------
Function ExporteDonnées (table_source As String, base_destination
As String, table_destination As String)

Dim base_source As Database, exportation As QueryDef
Dim SqlChaine As String

' récupération de la base de données courante
Set base_source = CurrentDB()

' construction de la chaîne SQL de la requête ajout
SqlChaine = "INSERT INTO " & table_destination & " IN '"
& base_destination & "' SELECT DISTINCTROW " & table_source &
".* FROM [" & table_source & "];"

' création de la requête qui va contenir la chaîne SQL générée
' dans la base de données courante
Set exportation = base_source.CreateQueryDef("RTemp", SqlChaine)

' exécution de la requête ainsi générée
exportation.Execute
exportation.Close

' destruction de la requête créée dans la base de données courante
base_source.DeleteQueryDef ("RTemp")

' fermeture de la base de données courante dans le module
base_source.Close

End Function

----------------------------------------
-------------------------------

5 réponses

Avatar
Pierre CFI [mvp]
bonjour
hum
base_source.QueryDef ("RTemp").Delete


--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B

Site pour bien commencer
Access http://users.skynet.be/mpfa/
Excel http://www.excelabo.net
Site perso
http://access.cfi.free.fr
"jmlm" a écrit dans le message de news:
Bonjour,
je voudrais utiliser ce code pour mettre à jour une base de données sur un
dique amovible, mais DeleteQueryDef ne passe pas à la compilation, alors que
l'objet requete est bien crée.
Cordialement, et jouyeuses fêtes.

------------------------------
---------------------------------------------
Function ExporteDonnées (table_source As String, base_destination
As String, table_destination As String)

Dim base_source As Database, exportation As QueryDef
Dim SqlChaine As String

' récupération de la base de données courante
Set base_source = CurrentDB()

' construction de la chaîne SQL de la requête ajout
SqlChaine = "INSERT INTO " & table_destination & " IN '"
& base_destination & "' SELECT DISTINCTROW " & table_source &
".* FROM [" & table_source & "];"

' création de la requête qui va contenir la chaîne SQL générée
' dans la base de données courante
Set exportation = base_source.CreateQueryDef("RTemp", SqlChaine)

' exécution de la requête ainsi générée
exportation.Execute
exportation.Close

' destruction de la requête créée dans la base de données courante
base_source.DeleteQueryDef ("RTemp")

' fermeture de la base de données courante dans le module
base_source.Close

End Function

----------------------------------------
-------------------------------


Avatar
Eric
Bonjpour,

Utilises l'instruction suivante :
base_source.QueryDefs.Delete "RTemp"

DeleteQueryDef est une méthode obsolète (Access 1.x et 2)

PS : tu devrais préfixer tes objets par DAO. comme Dim base_source as
DAO.Database, exportation as DAO.Querydef

--
A+
Eric

Lien à suivre : http://users.skynet.be/mpfa/
Avatar
Pierre CFI [mvp]
base_source.QueryDefs ("RTemp").Delete
encore plus mieux avec un s

--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B

Site pour bien commencer
Access http://users.skynet.be/mpfa/
Excel http://www.excelabo.net
Site perso
http://access.cfi.free.fr
"Pierre CFI [mvp]" a écrit dans le message de news:%
bonjour
hum
base_source.QueryDef ("RTemp").Delete


--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B

Site pour bien commencer
Access http://users.skynet.be/mpfa/
Excel http://www.excelabo.net
Site perso
http://access.cfi.free.fr
"jmlm" a écrit dans le message de news:
Bonjour,
je voudrais utiliser ce code pour mettre à jour une base de données sur un
dique amovible, mais DeleteQueryDef ne passe pas à la compilation, alors que
l'objet requete est bien crée.
Cordialement, et jouyeuses fêtes.

------------------------------
---------------------------------------------
Function ExporteDonnées (table_source As String, base_destination
As String, table_destination As String)

Dim base_source As Database, exportation As QueryDef
Dim SqlChaine As String

' récupération de la base de données courante
Set base_source = CurrentDB()

' construction de la chaîne SQL de la requête ajout
SqlChaine = "INSERT INTO " & table_destination & " IN '"
& base_destination & "' SELECT DISTINCTROW " & table_source &
".* FROM [" & table_source & "];"

' création de la requête qui va contenir la chaîne SQL générée
' dans la base de données courante
Set exportation = base_source.CreateQueryDef("RTemp", SqlChaine)

' exécution de la requête ainsi générée
exportation.Execute
exportation.Close

' destruction de la requête créée dans la base de données courante
base_source.DeleteQueryDef ("RTemp")

' fermeture de la base de données courante dans le module
base_source.Close

End Function

----------------------------------------
-------------------------------






Avatar
jmlm
Meci de la réponse, mais cette ligne de code me donne le message d'erreur :
"Membre de méthode ou de données introuvable".
Cordialement


bonjour
hum
base_source.QueryDef ("RTemp").Delete


--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B

Site pour bien commencer
Access http://users.skynet.be/mpfa/
Excel http://www.excelabo.net
Site perso
http://access.cfi.free.fr
"jmlm" a écrit dans le message de news:
Bonjour,
je voudrais utiliser ce code pour mettre à jour une base de données sur un
dique amovible, mais DeleteQueryDef ne passe pas à la compilation, alors que
l'objet requete est bien crée.
Cordialement, et jouyeuses fêtes.

------------------------------
---------------------------------------------
Function ExporteDonnées (table_source As String, base_destination
As String, table_destination As String)

Dim base_source As Database, exportation As QueryDef
Dim SqlChaine As String

' récupération de la base de données courante
Set base_source = CurrentDB()

' construction de la chaîne SQL de la requête ajout
SqlChaine = "INSERT INTO " & table_destination & " IN '"
& base_destination & "' SELECT DISTINCTROW " & table_source &
".* FROM [" & table_source & "];"

' création de la requête qui va contenir la chaîne SQL générée
' dans la base de données courante
Set exportation = base_source.CreateQueryDef("RTemp", SqlChaine)

' exécution de la requête ainsi générée
exportation.Execute
exportation.Close

' destruction de la requête créée dans la base de données courante
base_source.DeleteQueryDef ("RTemp")

' fermeture de la base de données courante dans le module
base_source.Close

End Function

----------------------------------------
-------------------------------







Avatar
jmlm
Merci beaucoup,
base_source.QueryDefs.Delete "RTemp" Fonctionne.
@+ et bonnes fêtes encore ....



Bonjpour,

Utilises l'instruction suivante :
base_source.QueryDefs.Delete "RTemp"

DeleteQueryDef est une méthode obsolète (Access 1.x et 2)

PS : tu devrais préfixer tes objets par DAO. comme Dim base_source as
DAO.Database, exportation as DAO.Querydef

--
A+
Eric

Lien à suivre : http://users.skynet.be/mpfa/