#

Excel, Access
 
Fehlermeldung:
Microsoft Excel   Sie haben versucht, eine Datenbank zu öffnen, die bereits von Benutzer Admin auf Computer Vaio_Raimund geöffnet ist.
Versuchen Sie es erneut, wenn die Datenbank verfügbar ist.
 
Betrifft: wenn man mit Excel auf eine Access Datenbank zugreifen möchte, während die Datenbank noch von anderen Personen geöffnet ist.
Zum Beispiel, wenn Microsoft Access selbst auf die Datenbank zugreift und gleichzeitig eine Excel Auswertung getroffen werden soll
indem Excel Daten von der Microsoft Access Anwendung holt
Der Fehler kommt auch auf, wenn man in Microsoft Access per vba Code ein Excel Dokument öffnet um dann Daten auszuwerten oder Daten zur Auswertung aktualisieren möchte.
 

 
 
Wenn dann Daten in Microsoft Excel automatisch aktualisiert werden sollen, während jemand anders auf die Desktop Datenbank Access zugreift, dann
Erscheint der Verbindungsdialog zu den Daten.
OLE DB Initialisierungsinformationen für Microsoft Access Datenbank.
Hier ist es wichtig, dass man den Öffnen Modus ändert auf DB_MODE_READ.
Beim Standard Aufbau einer externen Datenverbindung von Excel zu einer Access Datenbank wird die Datenbank mit dem Öffnen Modus
DB_SHARE_DENY_NONE aufgebaut. Da diese Verbindungsoptionen beim Erstellen einer Daten-Verbindung zur Access Datenbank nicht direkt als Zwischendialog erscheinen, kann man hier die Verbindungsoptionen ändern.
Eine Änderung des automatischen Dialogs führt auch gleichzeitig dazu, dass die Verbindungsinformation in geänderter Form wieder abgelegt und gespeichert wird.

 
Manuelle Korrektur:
Man kann die Datenverbindung auch manuell direkt im Microsoft Excel Dokument verändern
Hierzu wählt man Menü->Daten->Verbindungen (Datenverbindungen zu Datenbanken)

 
 
Dann wählt man im Dialog: Arbeitsmappenverbindungen eine Verbindung aus und geht zu Eigenschaften

 
Im Dialog Verbindungseigenschaften findet man unter Definition in dem Feld: Verbindungsdatei
Den eigentlichen Verbindungseinstellungen bzw. den Connection String zur Datenbank.
Hier muss man den Text auf MODE=Read setzen, damit es zu keinen Fehlermeldungen mehr kommt

 
 
Gezeigtes Beispiel der funktionierenden Verbindungszeichenfolge:

 
Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=C:\SP_Xx\SP_Xx_Daten.accdb;Mode=Read;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Engine Type=6;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;Jet OLEDB:Support Complex Data=False;Jet OLEDB:Bypass UserInfo Validation=False;Jet OLEDB:Limited DB Caching=False;Jet OLEDB:Bypass ChoiceField Validation=False
 

 
 
Als Standard wird die Verbindungszeichenfolge mit Mode=Share_Deny_Write erstellt, wie man hier sehen kann

Provider=Microsoft.ACE.OLEDB.12.0;Password="";User ID=Admin;Data Source=C:\SP_Xx\SP_Xx_Daten.accdb;Mode=Share Deny Write;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=6;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;Jet OLEDB:Support Complex Data=False;Jet OLEDB:Bypass UserInfo Validation=False;Jet OLEDB:Limited DB Caching=False;Jet OLEDB:Bypass ChoiceField Validation=False

 
 
Mobile

.

0123movie.net