Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1844to1848
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Access Abfrage

Access Abfrage
07.09.2021 15:12:56
Jürgen
MS Access für MS 365 MSO(16.02.12527....)32-Bit
Windows 7
VBA Programmierung in Access.
Hallo,
wir haben eine Access-Abfrage erstellt, die auf eine Exceldatei zugreift. Wenn diese Exceldatei allerdings an einem anderen Rechner geöffnet ist, kann die Exceldatei von Access nicht mehr gelesen werden.
Die Fehlermeldung lautet in etwa: wir haben keinen exclusiven Zugriff auf die Daten (von Excel), weil die Datei an anderer Stelle geöffnet ist.
Die Exceldatei wird per ADO als Datenbank angesprochen und dann mit einem SQL Statement die Daten gelesen.
Wenn wir die Datenabfrage mit einer Cloudlösung verwenden, haben wir kein Problem, weil wir dann 2 Dateien nutzen, die immer wieder synchronisiert werden.
Es muss also mit der Single-Problematik bei Excel zu tun haben, aber für die Excelabfrage wird die entsprechende xslm. Datei gar nicht geöffnet, sondern nur gelesen, trotzdem erscheint der Fehler.
Hat da irgendjemand einen Tip?
Ich habe versucht bei Microsoft Hilfe zu holen, kannst du vergessen. Oder du bist bereit 300 € zu investieren.

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Access Abfrage
07.09.2021 16:13:09
Oberschlumpf
Hi Jürgen,
"...Ich habe versucht bei Microsoft Hilfe zu holen, kannst du vergessen. Oder du bist bereit 300 € zu investieren...."
DA seht ihr mal, WIEVIEL Geld - wir alle - sparen, weil es so verdammt gute Foren gibt, wie z Bsp herber.de !!!!!!!!!!!!!!!!!
Dein beschriebenes "Excel-Problem" ist kein Problem, sondern der Grund ist zu finden in der Architektur von Excel - also - die Art und Weise, wie Excel irgdwann mal und noch immer von MS als Tabellenkalkulations-Programm erstellt wurde.
Das gleiche "Problem" wirst du auch haben, wenn...
...Kollege 1 hat LW:\Netzwerkordner\Datei1.xls geöffnet
...jetzt willst auch du LW:\Netzwerkordner\Datei1.xls öffnen (während Kollege 1 noch in der Datei arbeitet)
Du wirst den Hinweis bekommen, dass die Datei nur schreibgeschützt geöffnet und nicht unter dem selben Namen gespeichert werden kann, weil die Datei schon von Kollege 1 vor dir geöffnet wurde.
Du schreibst "...aber für die Excelabfrage wird die entsprechende xslm. Datei gar nicht geöffnet, sondern nur gelesen..."
Ich frage :-) Wie, glaubst du denn, können Daten aus einer Datei gelesen werden? Die Datei muss vorher geöffnet werden :-)
Auch bei Verwendung von ADO/sonstige Zugriffsmöglichkeiten.
Das Öffnen mit ADO/usw sehen wir nur nicht.
So, das waren meine Erklärungen - warum - das Ganze nicht so funktioniert, wie du es gern hättest.
Eine Idee, wie es funktioniert, weiß ich nicht - ich bin kein Access-Experte.
Hast du denn schon in einem Access-Forum gefragt? (wenn ja, schreib bitte in jedes Forum jeden Link zu jedem anderen Forum, in dem du schon gefragt hast / wenn nein und du willst noch woanders fragen, dann schreib bitte auch in jedes Forum jeden Link zu jedem anderen Forum, in dem du gefragt hast/fragen wirst - vergiss nicht: 300 Eur/Std!!)
Ja, ich weiß, nach deinem Verständnis muss das ja ein "Excel-Problem" sein, weil es ja eine Excel-Datei ist!
Aber - du schreibst ja selbst - der Zugriff/der Fehler erfolgt aus ACCESS heraus ;-)
Hoffe, ich konnte helfen...
Ciao
Thorsten
Anzeige
AW: Access Abfrage
08.09.2021 09:26:07
Jürgen
Hallo Thorsten,
vielen Dank für Deine ausführliche Antwort. Ich bin mir der Problematik durchaus bewusst. Ich habe einen professionellen VBA-Programmierer der für mich die Makros schreibt. Er hatte mir versichert, dass Excel nur im Lesemodus geöffnet wird. Trotzdem hat Excel ein Problem damit, bzw. die Fehlermeldung in Access angezeigt. Wir werden also weiter nach einer Lösung suchen.
AW: Access Abfrage
09.09.2021 13:40:17
Dieter
Hallo Jürgen,
du könntest eine Kopie der Excel-Arbeitsmappe erstellen und dann auf diese Kopie zugreifen.
Die Kopie wird auch erstellt, wenn die Excel-Arbeitsmappe durch einen anderen Benutzer geöffnet ist.
Du verwendest dazu die Bibliothek "Microsoft Scripting Runtime". Ich habe hier die frühe Binding verwendet, damit es anschaulicher ist, das geht natürlich auch mit später Bindung.
Das Programm:

Sub Lesen()
Dim datei_Kopie As String
Dim datei_Orig As String
Dim fso As FileSystemObject
Dim fil As File
Dim pfad As String
datei_Orig = "Beispiel_Orig.xlsx"
datei_Kopie = "Beispiel_Kopie.xlsx"
pfad = "\\MEMORY-PC-2020\F\BackUp\"
Set fso = New FileSystemObject
Set fil = fso.GetFile(pfad & datei_Orig)
fil.Copy Destination:=pfad & datei_Kopie
Set fso = Nothing
End Sub
Viele Grüße
Dieter
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige