nach etwas Recherche habe ich unten folgende Funktion gefunden mit der ich abfragen kann ob eine Datei geöfffnet ist oder nicht.
--------------------------------------
Function IsWorkbookOpen(strWB As String) As Boolean
On Error Resume Next
IsWorkbookOpen = Not Workbooks(strWB) Is Nothing
End Function
--------------------------------------
Sub CommandButton2_Click()
If IsWorkbookOpen(sDatei) Then 'Funktion in Modul1 definiert
MsgBox "Die zugehörige Datei " & sDatei & " ist geöffnet!" & vbCrLf & "Zur Übertragung _
der Daten muss diese geschlossen werden!" _
& vbCrLf & " " & vbCrLf & "Übertragungsprozedur wird beendet", _
16, " Hinweis für " & Application.UserName
Exit Sub
End If
End Sub
--------------------------------------
Dies funktioniert so auch!
ABER nur wenn die Datei im gleichen Excelprozess geöffnet ist. Jedoch habe ich das Problem das die betreffende Datei immer in einem eigenen Excel-Prozess auf dem selben Rechener (Das Programm das die Datei Aufruft macht das einfach so und ist nicht zu ändern) oder über das Netztwerk geöffnet wird.
Nach langer Recherche finde ich leider nichts wie ich dann prüfen kann ob die Datei geöffnet ist. Meine VBA Kentnisse sind weitgehend auch sehr bescheiden.
Kann mir da jemand dabei helfen?