Impossible d'ouvrir la base de données parce que celle-ci est manquante.
Bonjour, je dois ouvrir un fichier Access qui est protégé par un nom d'utilisateur et un mot de passe. Par la suite, je dois exporter des informations de la base de données dans un fichier Excel pour ensuite fermer la base de données. Cette opération se fait présentement de façon manuelle tous les lundis matin. Pour être sur que la personne en charge ne l'oubli pas, on m'a assigné la demande d'automatiser ce traitement. Cependant, j'ai quelques difficultés:
Voiçi le code de mon fichier vbs:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| Option Explicit
Dim objAccess, objShell
Dim strPathToMDB
Dim workgroup
Dim user, password, application
strPathToMDB = "C:\maBase.mdb"
application = "C:\Program Files\Microsoft Office\Office10\MSACCESS.EXE"
Set objShell = CreateObject("WScript.Shell")
Set objAccess = CreateObject("Access.Application")
workgroup = "C:\maSecurite.MDW"
user = "Admin"
password = "pwdAdmin"
objShell.run Chr(34) & application & Chr(34) & " " & Chr(34) & strPathToMDB & Chr(34) & " /nostartup /user " & Chr(34) & user & Chr(34) & _
" /pwd " & Chr(34) & password & Chr(34) & " /wrkgrp " & Chr(34) & workgroup & Chr(34)
Set objAccess = GetObject(,"Access.Application")
objAccess.OpenCurrentDatabase(strPathToMDB)
objAccess.Run "exportQuery"
objAccess.closeCurrentDataBase
objAccess.Quit
Set objAccess =Nothing |
Voiçi le code de exportQuery:
Code:
1 2 3
| Sub exportQuery()
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "qryExport", "C:\qryBase.XLS", True
End Sub |
Quand j'exécute ce script en local, ça fonctionne. Cependant quand j'exécute ce script sur un serveur, ça plante.
La base de données s'ouvre, et après je reçois le message suivant:
Erreur :"Impossible d'ouvrir la base de données parce que celle-ci est manquante, ou a été ouverte par un autre utilisateur en mode exclusif."
Code : 800A1EBA
La base de données existe puisqu'elle s'ouvre et n'a pas été ouverte par un autre utilisateur en mode exclusif.
Alors ma question est pourquoi ce script fonctionne en local et pas en réseau? Et comment règler le problème?
Merci