Err 3045 imposs. utiliser nomDB. Fichier en cours d'utilisation.
mihego32
Messages postés
36
Date d'inscription
Statut
Membre
Dernière intervention
-
ron003 Messages postés 7 Date d'inscription Statut Membre Dernière intervention -
ron003 Messages postés 7 Date d'inscription Statut Membre Dernière intervention -
Bonsoir, Bonjour,
Je me sens complètement désemparé face à ce message :
Impossible d'utiliser «ma-DB». Fichier en cours d'utilisation. (3045)
qui survient lorsque le code associé à un bouton d'un formulaire tout simple arrive sur l'instruction "Set MyDB = CurrentDb" dans cette Sub (les déclarations adéquates sont OK) :
Seul utilisateur de mon PC sous Win 8 Pro et msAccess 2010, j'ai essayé avec les versions .accdb et .mdb. j'ai essayé des procédures de Compacter & Réparer, avec Decompile. J'ai vérifié les permissions de la DB. J'ai recréé une nouvelle DB, importé les objets : même erreur.
En VBA, j'ai dans cet ordre (et j'ai essayé en modifiant la séquence) les références suivantes :
- Visual Basic for Applications
- Microsoft Access 14.0 Object Library
- Ole Automation
- Microsoft Office 14.0 Access database engine Object Library
- Microsoft Scripting Runtime
- Microsoft Word 14.0 Object Library
Ces deux dernières librairies étant nécessaire pour traiter des formulaires Word. Je précise que je n'ai eu aucun problème pour ouvrir ces formulaires, les analyser et en extraire les données, tant que je n'étais pas arrivé à l'ouverture de la DB et des tables.
J'ai essayé des formules alternatives pour ouvrir la DB pour ouvrir une de ses tables :
J'ai lu sur un site que les instructions suivantes pouvaient résoudre le problème :
La première passe mais n'évite pas l'erreur sur le Set MyDB, la seconde suffit pour déclencher l'erreur 3045.
Je n'ai plus eu l'erreur après avoir transféré mes bases d'un dossier "D:\Proj2013PO\DB" vers un dossier ""D:\Proj2013PO\ProjetMSA", le changement de nom a été fructueux pendant 1 heure ou 2, puis c'est revenu soudainement après avoir codé quelques étapes de traitement. Ce n'est pas mon premier projet avec lequel j'ai cette erreur intermittente, imprévisible et m... Je développe des projets MSA depuis Access 2 et cela fait 40 ans que je suis analyste-programmeur. Je dois avoir une douzaine d'applications MSA perso, avec data DB multiples, etc. J'ai fait des recherches sur de nombreux sites mais en vain...
C'est tout simple : si cette erreur continue à me bloquer, je devrai abandonner ce projet à titre bénévole pour une ONG dont je suis membre. Voir virer Microsoft Access à l'avenir.
Alors tout conseil ou avis est bienvenu et je vous remercie de votre attention.
Michel
Je me sens complètement désemparé face à ce message :
Impossible d'utiliser «ma-DB». Fichier en cours d'utilisation. (3045)
qui survient lorsque le code associé à un bouton d'un formulaire tout simple arrive sur l'instruction "Set MyDB = CurrentDb" dans cette Sub (les déclarations adéquates sont OK) :
Private Sub cmdImporterFiches_Click() ' Identifie les fichiers présents dans le dossier d'extraction de courriels, ' traite le contenu et le déplace vers le dossier des Traités On Error GoTo HandleErrors Stop Set MyDB = CurrentDb ' <=== <=== <=== <=== <=== ICI L'ERREUR FATALE Set wDossier = wFSO.GetFolder(Me.ctlChemin) For Each wFil In wDossier.Files If Left(wFil.Name, 9) = Me.ctlPréfixe Then Extract (wFil.Name) ' validation, lecture et traitement de chaque formulaire If SwOK = True Then ' arrêt sur 1er fichier intraitable wFil.Move Me.ctlChemin & Me.ctlFichesTraitées Else Exit For End If End If Next wFil Set MyDB = Nothing: Set wDoc = Nothing : Set wDossier = Nothing Set wFSO = Nothing: Set wApp = Nothing ExitHere: Exit Sub HandleErrors: HandleErrors Err.Number, "cmdImporterFiches_Click" Resume ExitHere End Sub '=======================================================
Seul utilisateur de mon PC sous Win 8 Pro et msAccess 2010, j'ai essayé avec les versions .accdb et .mdb. j'ai essayé des procédures de Compacter & Réparer, avec Decompile. J'ai vérifié les permissions de la DB. J'ai recréé une nouvelle DB, importé les objets : même erreur.
En VBA, j'ai dans cet ordre (et j'ai essayé en modifiant la séquence) les références suivantes :
- Visual Basic for Applications
- Microsoft Access 14.0 Object Library
- Ole Automation
- Microsoft Office 14.0 Access database engine Object Library
- Microsoft Scripting Runtime
- Microsoft Word 14.0 Object Library
Ces deux dernières librairies étant nécessaire pour traiter des formulaires Word. Je précise que je n'ai eu aucun problème pour ouvrir ces formulaires, les analyser et en extraire les données, tant que je n'étais pas arrivé à l'ouverture de la DB et des tables.
J'ai essayé des formules alternatives pour ouvrir la DB pour ouvrir une de ses tables :
Set MyDB = OpenDatabase(CheminNomDB, False) Set MyDB = DBEngine(0)(0)
J'ai lu sur un site que les instructions suivantes pouvaient résoudre le problème :
RefreshDatabaseWindow DBEngine.Idle dbRefreshCache
La première passe mais n'évite pas l'erreur sur le Set MyDB, la seconde suffit pour déclencher l'erreur 3045.
Je n'ai plus eu l'erreur après avoir transféré mes bases d'un dossier "D:\Proj2013PO\DB" vers un dossier ""D:\Proj2013PO\ProjetMSA", le changement de nom a été fructueux pendant 1 heure ou 2, puis c'est revenu soudainement après avoir codé quelques étapes de traitement. Ce n'est pas mon premier projet avec lequel j'ai cette erreur intermittente, imprévisible et m... Je développe des projets MSA depuis Access 2 et cela fait 40 ans que je suis analyste-programmeur. Je dois avoir une douzaine d'applications MSA perso, avec data DB multiples, etc. J'ai fait des recherches sur de nombreux sites mais en vain...
C'est tout simple : si cette erreur continue à me bloquer, je devrai abandonner ce projet à titre bénévole pour une ONG dont je suis membre. Voir virer Microsoft Access à l'avenir.
Alors tout conseil ou avis est bienvenu et je vous remercie de votre attention.
Michel
A voir également:
- Erreur 3045 quadra
- Erreur 3005 france tv - Forum TV & Vidéo
- Erreur 3000 france tv - Forum Lecteurs et supports vidéo
- Erreur t32 ✓ - Forum Livebox
- Erreur 0x80070643 - Accueil - Windows
- Erreur lors de l'enregistrement du contact - Forum Xiaomi
2 réponses
Bonjour,
Je suis toujours bloqué à 100 % malgré mes tentaives hier et aujourd'hui matin.
J'ai donc créé une nouvelle DB "mini.mdb' dans la racine D:, avec 1 table ne contenant qu'un champ-clef, 1 formulaire sans source avec 1 bouton qui exécute ce code :
Exécution OK.
J'ai alors déplacé la base dans le répertoire où je travaille "D:\po2013\ProjetMSA". J'ai ouvert la base, l'ai activée pour éliminer la protection de Win8 après un déplacement de fichier, ouvert le formulaire et cliqué sur le bouton et Arghh, ERR 3045 a de nouveau frappé mes yeux effarés.
Il est donc possible (who knows ?) que le problème soit lié aux accès aux fichiers et/ou aux dossiers :
- "mini.mdb" : accès libre, la case "Lecture seule" n'est pas cochée. Partie "Attributs avancés", 2 cases sont cochées : "Le fichier est prêt à être archivé" et "Autoriser l'indexation du contenu de ce fichier en plus des propritéts de fichier"
- dossier "ProjetMSA" : la case "Lecture seule (s'applique uniquement aux fichiers du dossiers)" est dans un état intermédiaire (petit carré noir à l'intérieur de la case) entre non-cochée (case blanche) et cochée (case blanche avec le V classique). J'ai décoché la case ainsi que celle des dossier supérieur "po2013", ce qui donne un message avec e.a. une seule case cochée "Appliquer les modifications à ce dossier, aux-sous-dossiers et aux fichiers" sans possibilité de la décocher (et l'autre case n'est pas accessible) ; seule option : [OK].
- racine D: 97,6 Go dont 14,6 utilisés ; je l'avais mise en "Partagé" alors que cela n'a pas lieu d'être, mais sait-on jamais ? Les "Utilisateurs authentifiés", "Utilisateurs", "Administrateurs" et "Système" ont un contrôle total. Difficile de faire plus ouvert. La gestion de quota n'est pas activée.
Nouvelle exécution : même erreur et la case "Lecture seule" pour le dossier "ProjetMSA" est remis en stade intermédiaire à l'insu de mon plein gré ; j'ai lu sur un site de Microsoft que c'est sans impact sur les permission aux niveaux des fichiers.
J'ai supprimé l'indexation au niveau de mini.mdb. Nouvel essai et toujours l'erreur.
Où est-elle cette corde pour me pendre ? Non je vais plutôt investiguer du côté de LibreOffice et en plus c'est gratuit et pas comme Office : des centaines d'euros et des années de pratique et d'expérience à la poubelle.
Michel
Je suis toujours bloqué à 100 % malgré mes tentaives hier et aujourd'hui matin.
J'ai donc créé une nouvelle DB "mini.mdb' dans la racine D:, avec 1 table ne contenant qu'un champ-clef, 1 formulaire sans source avec 1 bouton qui exécute ce code :
Dim MyDB As Database Private Sub cmdMini_Click() '============================== On Error GoTo GestionErreurs Stop Set MyDB = CurrentDb Set MyDB = Nothing ExitHere: Exit Sub GestionErreurs: GestionErreur Err.Number, "cmdMini_Click" Resume ExitHere End Sub '==========================================
Exécution OK.
J'ai alors déplacé la base dans le répertoire où je travaille "D:\po2013\ProjetMSA". J'ai ouvert la base, l'ai activée pour éliminer la protection de Win8 après un déplacement de fichier, ouvert le formulaire et cliqué sur le bouton et Arghh, ERR 3045 a de nouveau frappé mes yeux effarés.
Il est donc possible (who knows ?) que le problème soit lié aux accès aux fichiers et/ou aux dossiers :
- "mini.mdb" : accès libre, la case "Lecture seule" n'est pas cochée. Partie "Attributs avancés", 2 cases sont cochées : "Le fichier est prêt à être archivé" et "Autoriser l'indexation du contenu de ce fichier en plus des propritéts de fichier"
- dossier "ProjetMSA" : la case "Lecture seule (s'applique uniquement aux fichiers du dossiers)" est dans un état intermédiaire (petit carré noir à l'intérieur de la case) entre non-cochée (case blanche) et cochée (case blanche avec le V classique). J'ai décoché la case ainsi que celle des dossier supérieur "po2013", ce qui donne un message avec e.a. une seule case cochée "Appliquer les modifications à ce dossier, aux-sous-dossiers et aux fichiers" sans possibilité de la décocher (et l'autre case n'est pas accessible) ; seule option : [OK].
- racine D: 97,6 Go dont 14,6 utilisés ; je l'avais mise en "Partagé" alors que cela n'a pas lieu d'être, mais sait-on jamais ? Les "Utilisateurs authentifiés", "Utilisateurs", "Administrateurs" et "Système" ont un contrôle total. Difficile de faire plus ouvert. La gestion de quota n'est pas activée.
Nouvelle exécution : même erreur et la case "Lecture seule" pour le dossier "ProjetMSA" est remis en stade intermédiaire à l'insu de mon plein gré ; j'ai lu sur un site de Microsoft que c'est sans impact sur les permission aux niveaux des fichiers.
J'ai supprimé l'indexation au niveau de mini.mdb. Nouvel essai et toujours l'erreur.
Où est-elle cette corde pour me pendre ? Non je vais plutôt investiguer du côté de LibreOffice et en plus c'est gratuit et pas comme Office : des centaines d'euros et des années de pratique et d'expérience à la poubelle.
Michel