Errreur automation - bibliothèque non inscrite

Résolu
damedom41 Messages postés 79 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 2 août 2014 - 26 avril 2014 à 18:33
damedom41 Messages postés 79 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 2 août 2014 - 26 avril 2014 à 19:47
Bonjour,
Je code en VBA sous ACCESS
Dans Rérérences, j'ai ajouté Microsoft Scripting Runtime qui se réfère à C:\Windows\System32\scrrun.dll
La dll en question existe bien à la place indiquée.
Je cherche à créer une copie de ma base de donnée de façon automatique, afin que mes utilisateurs puissent faire une sauvegarde.
Voici mon code :


Public Sub copie_base()
'déclaration des fichiers
Dim ofso As scripting.FileSystemObject
Dim ofso_file As scripting.File
Dim ofso_des As String
MsgBox ("après dim")
'instanciation
Set ofso = New scripting.FileSystemObject
MsgBox ("après set ofso")
Set ofso_file = ofso.GetFile("C:\DDI\OSTEO.accdb")
MsgBox ("après set ofso_file")
'préparation
ofso_des = "C:\DDI\DDI_SAUV\OSTEO_" & strdat(Date) & "_" & strtime(Time) & ".accdb"
'MsgBox ("ofso_des " & ofso_des)
'copie
ofso_file.Copy ofso_des, False
MsgBox ("copie " & ofso_des & " effectuée ")
'nettoyage
Set ofso = Nothing
End Sub

Mon programme se plante après la tentative d'instanciation avec le message suivant : Erreur execution -2147319779 - Erreur automation - Bibliothèque non inscrite
Donc je ne passe jamais dans "msgbox ("après set ofso")

Pourriez vous m'aider à trouver mon erreur s'il vous plait ?
Ou une autre méthode pour créer une sauvegarde auto de la base incluant le nom la date et l'heure dans un répertoire spécifié ?

Merci d'avance,

2 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
26 avril 2014 à 18:40
Bonjour,
Je commence par déplacer cette discussion, indûment ouverte dans le forum général de Visual Basic, vers le sous-forum VBA
0
damedom41 Messages postés 79 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 2 août 2014
26 avril 2014 à 19:18
Comment entrer dans un sous-forum ?
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 26/04/2014 à 19:03
Le code montré aboutit bien à l'azffichage du message dont tu dis qu'il ne "passe" pas :
"après set ofso"
Je ne suis pas allé plus loin, donc ...
Nota : il est maladroit d'utiliser FSO, qui dépend de VBS, lequel peut avoir été volontairement inhibé sur certaines machines, dont la mienne.

On peut d'ailleurs se demander la raison pour laquelle tu vas tout alourdir avec FSO alors qu'existe l'instruction FILECOPY de VBA !
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
0
damedom41 Messages postés 79 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 2 août 2014
26 avril 2014 à 19:21
J'utilisais cette fonction parce que je croyais (d'après la doc) que l'instruction filecopy ne pouvait copier qu'un fichier de données vers un autre à l'intérieur d'une même base.
Je viens de tester, ça fonctionne à merveille, et c'est beaucoup plus cool.
Merci donc

Ceci dit, cette solution fonctionne dans d'autres bases installées sur d'autres ordis, c'est pourquoi je m'arrachais un peu les cheveux. Il est possible que, comme sur le tien, VBS (c'est un peu du chinois pour moi) ait été volontairement inhibé !
En tout cas merci encore
0
Whismeril Messages postés 19019 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 13 avril 2024 655
26 avril 2014 à 19:31
@damedom merci de marquer la question résolue si c'est bien le cas.
0
damedom41 Messages postés 79 Date d'inscription mercredi 14 avril 2010 Statut Membre Dernière intervention 2 août 2014
26 avril 2014 à 19:47
comment marqué une question comme "résolue" ?
0
Rejoignez-nous