Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Prüfung, ob Datei bereits geöffnet

Forumthread: Prüfung, ob Datei bereits geöffnet

Prüfung, ob Datei bereits geöffnet
11.11.2003 16:18:02
Monika
Hallo,
wie kann ich beim Öffnen einer Arbeitsmappe feststellen, ob die Datei bereits von einem anderen Benutzer geöffnet ist??

Vielen Dank

Moni
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Prüfung, ob Datei bereits geöffnet
11.11.2003 16:43:26
Klaus
Hallo Moni, Du kannst abfragen, ob die Datei schreibgeschützt geöffnet wurde (was der Fall ist, wenn sie ein anderer bereits offen hat):

Dim Wb As Workbook
Set Wb = Workbooks.Open("c:\temp\test.xls")
If Wb.ReadOnly = True Then
...
end if

mit
user = Wb.WriteReservedBy

kannst Du sogar herausfinden, wer die Datei geöffnet hat (sofern der Benutzername unter Optionen, Allgemein - richtig gepflegt ist).

Gruß
Klaus
Anzeige
Abfrage, w e r Datei bereits geöffnet hat
12.11.2003 08:46:00
WernerB.
Hallo Klaus,

die Funktion "WriteReservedBy" kannte ich bisher noch nicht. Ich habe damit jetzt eine wenig herumexperimentiert, komme aber auf keinen grünen Zweig.

Ein Kollege hat auf meinen Wunsch eine bestimmte Excel-Datei geöffnet.
Nun versuche ich mittels "WriteReservedBy" mir anzeigen zu lassen, dass er sie bereits geöffnet hat.
Wenn ich die Datei danach auch noch (schreibgeschützt) öffne, wird mein Name ausgegeben; wenn ich sie nicht öffne, läuft das Makro immer auf einen Fehler.

Wie sollte die Makro-Sequenz denn aussehen, mit der ich feststellen kann, wer eine bestimmte Datei im Netzwerk bereits geöffnet hat (möglichst ohne sie zuvor selbst öffnen zu müssen)?

Auf eine kompetente Antwort bin ich gespannt.

Gruß WernerB.
Anzeige
AW: Prüfung, ob Datei bereits geöffnet
12.11.2003 07:44:53
WernerB.
Hallo Monika,

mit diesem Makro und der zugehörigen benutzerdefinierten Funktion kannst Du feststellen, ob die Datei im Netzwerk bereits geöffnet ist:

Option Explicit

Function DateiIstFrei(sDateiname As String) As Boolean
Dim hFile As Integer
On Error Resume Next
hFile = FreeFile()
Open sDateiname For Random Access Read Lock Read Write As #hFile
If Err Then
DateiIstFrei = False
Else
DateiIstFrei = True
End If
Close #hFile
End Function


Sub DateiZustand2()
Dim Pfad As String
Pfad = "D:\Eigene Dateien\Tabellen\Privat\MappeA.xls"
If DateiIstFrei(Pfad) = False Then
MsgBox "Datei ist bereits geöffnet !"
Else
MsgBox "Datei ist z.Zt. nicht geöffnet !"
End If
End Sub

Viel Erfolg wünscht
WernerB.

P.S.: Das Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter (siehe Forums-FAQ).
Anzeige
Vielen Dank!
12.11.2003 08:49:27
Moni
Hallo Klaus, Hallo Werner,

Vielen Dank Euch, es funktioniert.

PS an Werner: Ich gebe immer eine Rückmeldung. Ich habe die Frage gestern 2 Minuten vor Feierabend gestellt und bin gerade erst wieder gekommen und habe die Antworten gelesen.

Viele Grüße von

Moni
AW: Vielen Dank!
12.11.2003 10:02:22
WernerB.
Hallo Monika,

mit dem Hinweis auf eine Rückmeldung wollte ich Dir nicht zu nahe treten.
Diesen schreibe ich immer standardmäßig zu meinen Erst-Antworten. Dies scheint mir allgemein - in Deinem Fall allerdings wohl eher nicht - für dringend geboten, weil viele Fragesteller sich nach oft mühsam erarbeiteten Antworten nicht mehr melden und man dann als Antwortender nicht weiß, ob der Fragesteller die Antwort überhaupt gelesen hat oder ob es noch irgendwelche Verständnisprobleme gibt, zumal manche Fragestellungen (in Deinem Fall nicht) oft nicht eindeutig formuliert sind.

Gruß WernerB.
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige