OVH Cloud OVH Cloud

[VB6] [Automation] GetObject ne fonctionne plus !

3 réponses
Avatar
Cédric Girard
Bonjour


Je rencontre un problème dans une "vieille" application développée voici
maintenant 4 ans (déjà !) et qui fonctionnait jusqu'à il y a peu mais qui ne
fonctionne plus, à cause d'un dysfonctionnement en Automation lorsque
j'essaye de créer une instance de MS Access, à l'aide de GetObject.

Set ACC = GetObject("x:\monrép\monfichier.mdb") <<<< Ici plus rien ne se
passe, "ACC" reste à "Nothing"

Cela a toujours fonctionné jusqu'alors ! Je n'ai aucun message de retour,
rien me permettant d'en trouver la cause.

J'utilisais cette méthode pour générer des fichiers Excel à partir de tables
ou de requêtes à l'aide la ligne suivante. Bien évidemment, comme ACC reste
à Nothing cela ne fonctionne plus !

ACC.DoCmd.OutputTo acOutputQuery, NomReq, acFormatXLS, NomDuFichier, False

Auriez-vous une idée ? Je n'ai pas essayé de désinstaller totalement Office
pour le réinstaller (je n'en ai pas trop le temps non plus !)


--
Cédric Girard
OCERA CFGA (Aube)
Mon site perso : http://www.aube-nature.com

3 réponses

Avatar
david
Salut,

essayes plutôt la création d'objt OLE plutôt que l'automation (qui
n'est plus trop supportée par les nouveaux OS windows).
Pour ce faire, fait comme ça :
Sub exporterRequeteVersExcel(ByVal nomReq As String, ByVal nomFichierXL
As String)
Dim acc As Object

Set acc = CreateObject("Access.Application")
acc.DBEngine.OpenDatabase ("")
acc.DoCmd.OutputTo acOutputQuery, nomReq, acFormatXLS,
nomFichierXL, False
acc.Quit acQuitSaveAll
Set acc = Nothing
End Sub

A+
Avatar
Gloops
david a écrit, le 08/11/2005 10:57 :
Salut,


Salut
Set acc = CreateObject("Access.Application")



Ah ben mince alors, moi qui croyais que c'était ça, qu'on appelait
Automation. Tout faux alors ?
Avatar
Cédric Girard
Merci

Me semble avoir déjà essayé mais je vais refaire le test ;-)


--
Cédric Girard
OCERA CFGA (Aube)
Mon site perso : http://www.aube-nature.com


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

Salut,

essayes plutôt la création d'objt OLE plutôt que l'automation (qui
n'est plus trop supportée par les nouveaux OS windows).
Pour ce faire, fait comme ça :
Sub exporterRequeteVersExcel(ByVal nomReq As String, ByVal nomFichierXL
As String)
Dim acc As Object

Set acc = CreateObject("Access.Application")
acc.DBEngine.OpenDatabase ("")
acc.DoCmd.OutputTo acOutputQuery, nomReq, acFormatXLS,
nomFichierXL, False
acc.Quit acQuitSaveAll
Set acc = Nothing
End Sub

A+