OVH Cloud OVH Cloud

Effacer un objet dans un .mdb

2 réponses
Avatar
Jean Marie VIGNEAUD
Bonjour,

Je souhaire pouvoir effacer, au travers de code VBA, un objet Query
appartenant à une application .mdb autre que celle dans laquelle je me
trouve.

Apparemment, la commande DeleteObject ne permet de supprimer un objet que
dans la base en cours.

Merci de votre aide,

Cordialement,

JMV

2 réponses

Avatar
Raymond [mvp]
Bonjour.

étant un inconditionnel de l'automatisation lorsqu'il s'agit de travailler
sur deux bases simultanément, je te propose donc une solution par
automation.
Private Sub Commande0_Click()
Dim acApp As Access.Application
Set acApp = New Access.Application
acApp.OpenCurrentDatabase ("Nomdelabase.mdb")
With acApp
.Visible = False
.DoCmd.DeleteObject acQuery, "requête4"
.CloseCurrentDatabase
.Quit
End With
Set acApp = Nothing
End Sub

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Jean Marie VIGNEAUD" a écrit dans le
message de news: cqc0im$vl$
Bonjour,

Je souhaire pouvoir effacer, au travers de code VBA, un objet Query
appartenant à une application .mdb autre que celle dans laquelle je me
trouve.

Apparemment, la commande DeleteObject ne permet de supprimer un objet que
dans la base en cours.

Merci de votre aide,

Cordialement,

JMV





Avatar
Jessy Sempere [MVP]
Bonjour

Ceci devrait te convenir, il est grand temps que je mette à jour mon site :

Public Function DeleteObjectExterne(strDb$, intType%, strObject$)
'** intType : 0 pour table, 1 pour requête, 2 pour formulaire
'** 3 pour état, 4 pour macro et 5 pour module

Dim acApp As Object
Set acApp = CreateObject("Access.Application")

With acApp
.OpenCurrentDatabase strDb
.DoCmd.DeleteObject intType, strObject
.CloseCurrentDatabase
End With
acApp.Quit: Set acApp = Nothing
End Function


--
@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Jean Marie VIGNEAUD" a écrit dans le
message news: cqc0im$vl$
Bonjour,

Je souhaire pouvoir effacer, au travers de code VBA, un objet Query
appartenant à une application .mdb autre que celle dans laquelle je me
trouve.

Apparemment, la commande DeleteObject ne permet de supprimer un objet que
dans la base en cours.

Merci de votre aide,

Cordialement,

JMV