Office: VBA Code zum Anzeigen ob Datei bereits geöffnet ist

Helfe beim Thema VBA Code zum Anzeigen ob Datei bereits geöffnet ist in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich suche Hilfe bei folgendem Problem. Ich habe per Excel einen Stardbildschirm. Nun möchte per VBA einzelne Dateien öffnen.... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von CaMa1511, 22. Januar 2013.

  1. CaMa1511 Erfahrener User

    VBA Code zum Anzeigen ob Datei bereits geöffnet ist


    Hallo zusammen,

    ich suche Hilfe bei folgendem Problem.
    Ich habe per Excel einen Stardbildschirm.

    Nun möchte per VBA einzelne Dateien öffnen. Leider zeigt mir Excel diese Meldung nun nicht mehr an.
    VBA Code zum Anzeigen ob Datei bereits geöffnet ist untitled.JPG
    (beim öffnen der Datei über den Explorer wird diese Meldung angezeigt)
    Hier mein Code:

    Sub Platte_Fasern()

    ChDir "\\HECSWFILE03\Global-Data\conqdat\Datenerfassung C 3\Produktion\PE 1\Faserdimension\"
    Workbooks.Open Filename:= _
    "\\HECSWFILE03.grp.gambro.net\Global-Data\conqdat\Datenerfassung C 3\Produktion\PE 1\Faserdimension\Fasererkennung Platte Faser.xls"

    End Sub

    Kann ich in das Makro was einplegen das mir diese Meldung angezeigt wird wenn die Datei bereits offen ist.


    Alternativ könnte man das auch mit einer MsgBox machen.
    Makro sollte folgendes beinhalten.
    -Prüfen ob Datei geöffnet
    -Wenn Datei nicht geöffnet, öffnen
    -Wenn von anderem Benutzer geöffnet, anzeigen wer diese Datei geöffnet hat.
    -Abfrage ob Datei Schreibgeschützt geöffnet werden soll? JaNein

    Am liebsten wäre es mit wenn die obige Fehlermeldung kommen würde.

    Vielen Dank für Eure Hilfe.

    Gruß
    cama
     
    CaMa1511, 22. Januar 2013
    #1
  2. Beverly
    Beverly Erfahrener User
    Hi,

    versuche es mal auf diesem Weg:

    Code:
    Sub OffenPruefen()
       Dim blnOffen As Boolean
       Dim wkbMappe As Workbook
       For Each wkbMappe In Workbooks
          If wkbMappe.Name = "Fasererkennung Platte Faser.xls" Then
             blnOffen = True
             Exit For
          End If
       Next wkbMappe
       If blnOffen = False Then Workbooks.Open Filename:= _
          "\\HECSWFILE03.grp.gambro.net\Global-Data\conqdat\Datenerfassung C 3\Produktion\PE 1\Faserdimension\Fasererkennung Platte Faser.xls"
    End Sub
    
    Bis später,
    Karin
     
    Beverly, 23. Januar 2013
    #2
  3. CaMa1511 Erfahrener User
    Hallo Karin,

    du konntest mir doch schon mal helfen..... ;-)
    Also dein code hier scheint noch nicht richtig zu funktionieren. Aber der Ansatz stimmt schonmal. Prima :-)

    Wenn die Datei (rechner 1) geöffnet ist und ich sie mit deinem code (rechner 2) öffne wird sie ganz normal schreibgeschützt geöffnet.
    Wenn ich dann die Datei auf dem 1ten rechner schließe kommt die Abfrage ob ich sie ohne Schreibschutz öffnen möchte....

    Dies sollte allerdings ja schon geschehen, beim ersten öffnen, nicht erst wenn die Datei geschlossen wird
    Vielen Dank!

    gruß
    Marcel
     
    CaMa1511, 24. Januar 2013
    #3
  4. CaMa1511 Erfahrener User

    VBA Code zum Anzeigen ob Datei bereits geöffnet ist

    Hallo,

    ch habe mir nun mal ein Makro zusammen gebastelt das mir
    abfragt ob die Datei geöffnet ist, wenn geöffnet wird abgefragt per box ob mit Schreibschutz öffnen.....

    Das funktioniert schon mal....

    Allerdings ist die Idee so das ich einem button ein Makro zuordne, Dateipfad öffnen.
    Wie bekomme ich es hin, das ich die Datei abfrage, wenn sie noch nicht geöffnet ist, dass ohne Box geöffnet wird?
    Und falls die Datei von einem anderen benutzer geöffnet wurde, wer das ist, also den benutzername...

    Hier der Code:

    Sub Spinndüsen__C30()
    If IsFileOpen("\\hecswfile03\global-data\filter-duesen\Düsenüberwachung Conquest\Con III 2013 Ausfallgründe.xls") Then
    If MsgBox("Datei wurde von einem anderen Benutzer bereits geöffnen, Datei schreibgeschützt öffnen?", vbYesNo) = vbYes Then
    ChDir "\\hecswfile03\global-data\filter-duesen\Düsenüberwachung Conquest\"
    Workbooks.Open filename:= _
    "\\hecswfile03\global-data\filter-duesen\Düsenüberwachung Conquest\Con III 2013 Ausfallgründe.xls"
    End If
    Else
    End If
    End Sub
    Function IsFileOpen(filename As String)
    Dim filenum As Integer, errnum As Integer
    On Error Resume Next
    filenum = FreeFile()
    Open filename For Input Lock Read As #filenum
    Close filenum
    errnum = Err
    On Error GoTo 0
    Select Case errnum
    Case 0
    IsFileOpen = False
    Case 70
    IsFileOpen = True
    Case Else
    Error errnum
    End Select
    End Function


    PS: Am liebsten wäre mir noch immer, das die Meldung vom Excel her kommt. aber ich finde auch sonst wo nichts hierzu...
    Danke und Gruß
    CaMa
     
    CaMa1511, 25. Januar 2013
    #4
  5. Beverly
    Beverly Erfahrener User
    Beverly, 25. Januar 2013
    #5
  6. CaMa1511 Erfahrener User
    Hi,

    also weiterhelfen tut mir das leider nicht. Da hier das prob zwar ähnlich war, jedoch nicht behoben wurde.
    Allerdings habe ich dadurch einen neuen Denkansatz.

    Ich könnte per Makro die Datei von vorne weg ohne Schreibschutz öffnen. und falls dies nicht geht, bekomme ich ja auch eine Meldung.
    Die Meldung könnte man in einer Box "Datei schreibgeschützt, trotzdem öffnen" jaNein ......

    Oder liege ich jetzt da falsch?

    Bin erst wieder am montag mittag im Geschäft und kann da wieder testen.

    Wenn du mir noch einen Ansatz zu meiner letzten Idee hast, wäre super!

    Gruß
    CaMa
     
    CaMa1511, 25. Januar 2013
    #6
Thema:

VBA Code zum Anzeigen ob Datei bereits geöffnet ist

Die Seite wird geladen...
  1. VBA Code zum Anzeigen ob Datei bereits geöffnet ist - Similar Threads - VBA Code Anzeigen

  2. VBA Code Anpassen "Wert Einfügen statt Formel"

    in Microsoft Excel Hilfe
    VBA Code Anpassen "Wert Einfügen statt Formel": Hallo alle zusammen. Ich benötige bitte Hilfe von einem Experten, da ich mit meinem Code unzufrieden bin und dieser bei größeren Datenmengen respektive Zeilen ziemlich langsam wird. Wie müsste man...
  3. Excel VBA - Code Hilfe (Spalten, Werte kopieren etc.)

    in Microsoft Excel Hilfe
    Excel VBA - Code Hilfe (Spalten, Werte kopieren etc.): Hallo, ich benötige Hilfe für ein Problem, welches ich leider selbst schwerlich als Anfänger nicht lösen kann: Ich möchte von dem Tabellenblatt "Tabelle1" aus den Zellen B8:B14, K8:K14, B18:B25,...
  4. VBA Code " Zeilenhöhe bei Verb. Zellen Funktioniert fasst"

    in Microsoft Excel Hilfe
    VBA Code " Zeilenhöhe bei Verb. Zellen Funktioniert fasst": Hallo Leute dieser Code für Zellenhöhe bei Verbundenen Zellen Funktioniert fast. Ich habe ein Code von jemand anderem bekommen der nicht in einem Forum ist. Ich kann gerade diese Person nicht...
  5. PDF mit Namen,Datum speichern im Zielordner

    in Microsoft Excel Hilfe
    PDF mit Namen,Datum speichern im Zielordner: Hallo, habe das Problem den Namen in Zelle D2, Vorname in Zelle D5 , das Datum steht in der Zelle B 10 und soll beim speichern so angezeigt werden (Max Mustermann 2023 Oktober) wie und wo muß ich...
  6. Datentabelle per VBA Makro durch Kopieren und Einfügen einer Kopfzeile aufteilen

    in Microsoft Excel Hilfe
    Datentabelle per VBA Makro durch Kopieren und Einfügen einer Kopfzeile aufteilen: Hallo Zusammen, mein erster Beitrag hier, also schon mal Sorry im Voraus, wenn unvollständig beschrieben *:)* Ich habe das Forum schon nach einem brauchbaren Lösungsansatz durchsucht, bin aber...
  7. UserForm zum bearbeiten von Tabellen und speichern

    in Microsoft Excel Hilfe
    UserForm zum bearbeiten von Tabellen und speichern: Guten Tag Ich habe leider ein Problem, das mich zur Verzweiflung bringt. Vielleicht findet hier jemand einen Lösung für mein Problem. Ich bekommen leider einen Laufzeitfehler '1004'. Zur...
  8. Zeilennummerierung im VBA-Code anzeigen möglich?

    in Microsoft Access Hilfe
    Zeilennummerierung im VBA-Code anzeigen möglich?: Hallo zusammen, um eine DB zu pflegen arbeite ich mit dem Tool "Find and Replace", dass es mir erlaubt, bestimmte Zeichenfolgen in der gesamten DB zu finden. Befindet sich eine Zeichenfolge, wie...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden