Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.04.2024 20:05:21
28.04.2024 18:33:31
28.04.2024 18:25:12
28.04.2024 14:18:05
Anzeige
Archiv - Navigation
368to372
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
368to372
368to372
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

offene Datei feststellen

offene Datei feststellen
26.01.2004 10:53:09
iven_s
Hallo Leute,
habe folgendes Problem in einem Netzwerk. Wie kann ich feststellen ob eine Datei durch einen anderen User bereits geöffnet ist?
Habe selbst schon ein bischen gebastelt. Scheint mir aber nicht sehr elegant zu sein. Es kommt trotzdem noch die Meldung (Erinnerung dass die Datei jetzt verfügbar ist), die ich irgendwie unterdrücken möchte.

Sub öffnen()
For I = 1 To 5
Workbooks.Open D:\Datenbank.xls, , , , , , IgnoreReadOnlyRecommended = True
If Workbooks("Datenbank").ReadOnly Then
Workbooks("Datenbank").Close SaveChanges:=False
Else
GoTo weiter
End If
'Application.Wait (Now + TimeValue("0:00:01"))
Next I
MsgBox ("Die Datenbank wird gerade verwendet. Versuchen Sie es später noch einmal!")
Exit Sub
weiter:
End Sub

Danke!
iven_s

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: offene Datei feststellen
26.01.2004 15:49:21
Ramses
Hallo
probier mal das


'Prüfen ob ein File geöffnet ist
'Privat function TestOpen gehört dazu
Sub TestFileOpen()
    Dim iOpen As Integer
    Dim sFile As String
    sFile = InputBox("Path and Filename:", , "c:\test\test.xls")
    If sFile = "" Then Exit Sub
    iOpen = TestOpen(sFile)
    Select Case iOpen
       Case 0: MsgBox "Datei " & sFile & " ist frei"
       Case 1: MsgBox "Datei " & sFile & " ist geöffnet"
       Case 2: MsgBox "Datei " & sFile & " wurde nicht gefunden"
    End Select
End Sub

Private Function TestOpen(sPath As StringAs Integer
    If Dir(sPath) = "" Then
       TestOpen = 2
    Else
       On Error GoTo errorhandler
       Open sPath For Random Access Read Lock Read Write As #1
       Close #1
    End If
errorhandler:
    If Err = 70 Then TestOpen = 1
End Function

     Code eingefügt mit Syntaxhighlighter 2.5


Gruss Rainer
Anzeige
Danke Rainer, funktioniert...
27.01.2004 13:50:08
iven_s
.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige