Makro soll prüfen, ob Datei bereits geöffnet ist

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Makro soll prüfen, ob Datei bereits geöffnet ist
von: Thorsten aus Berlin
Geschrieben am: 26.04.2005 10:17:48
Hallo,
ich hab da mal ne Frage:
Ein Makro soll prüfen, ob eine Datei("x.xls") bereits geöffnet ist und wenn nicht, dann soll das Makro diese öffnen.
Mit Workbook.open gehts ja wohl nicht, ich bekomme jedenfalls immer nur "Laufzeitfehler".
Hat da jemand eine Lösung für mich?
Mfg
Thorsten aus Berlin :-)

Bild

Betrifft: AW: Makro soll prüfen, ob Datei bereits geöffnet ist
von: Rolf Beißner
Geschrieben am: 26.04.2005 10:36:50
Hallo Thorsten,
versuch mal das.
fG
Rolf

Sub filecheck
   Dim p    
   p= aktivprüfer ("x.xls")
End Sub


Function aktivprüfer(d$)
'Rolf Beißner.hf.26.4.05
    Dim fso As Object, fs As Object
    Dim i As Integer
    On Error GoTo err
        Windows(d$).Activate
        aktivprüfer = 1
        Exit Function
err:
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set fso = Application.FileSearch
    With fso
        .NewSearch
        .LookIn = "C:\"  'hier kannst du deinen Pfad spezifizieren 
        .Filename = d$
        .SearchSubFolders = True
        If .Execute() > 0 Then
            For i = 1 To .FoundFiles.Count
                If UCase(d$) = UCase(fs.GetFileName(.FoundFiles(i))) Then
                    Workbooks.Open Filename:=.FoundFiles(i)
                    Exit For
                End If
            Next
        Else
            MsgBox "Datei " & d$ & " nicht gefunden"
        End If
    End With
    aktivprüfer = 2
End Function

Bild

Betrifft: AW: Makro soll prüfen, ob Datei bereits geöffnet ist
von: UweD
Geschrieben am: 26.04.2005 10:49:38
Hallo Thorsten

so könnte es gehen.

Sub öffnen()
    Dim Ja, Pfad$, Datei$
    Pfad = "C:\Temp\"
    Datei = "x.xls"
    On Error Resume Next
    Ja = Workbooks(Datei).Name
    If Err.Number = 9 Then ' Datei nicht offen
        Err.Clear
        On Error GoTo 0
        Workbooks.Open Filename:=Pfad & Datei
    Else
        Workbooks(Datei).Activate
    End If
End Sub

Gruß UweD
Bild

Betrifft: Danke an alle
von: Thorsten aus Berlin
Geschrieben am: 26.04.2005 11:09:12
Die Lösung von Uwe ist genau das, was ich mir vorgestellt habe. Danke an Euch alle, die sich damit beschäftigt haben.
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Makro soll prüfen, ob Datei bereits geöffnet ist"