03.07.2014, 21:07
Hallo liebe Excelgemeinde,
mit folgenden Codes starte ich aus 3 verschieden Dateien im Neztwerk eine Code namens "Datensync"! Das funktionert auch prima!
Das was ich nicht hinbekomme ist aber das der folgende Code:
hier zuerstprüft ob die jeweiligen Dateien offen sind, wenn ja dann einfach den Code "Datensync" starten, wenn nein dann die jeweilige Datei öffnen den Code starten und dann wieder schließen!
Einen Code zur allgemeinen Prüfung ob eine bestimmte Datei offen ist habe ich schon:
Meine Fragen, wie kann ich beide Codes kombinieren, damit ich mein Vorhaben umsetzten kann?
Vielen Dank im Voraus
VG
Alexandra
mit folgenden Codes starte ich aus 3 verschieden Dateien im Neztwerk eine Code namens "Datensync"! Das funktionert auch prima!
Das was ich nicht hinbekomme ist aber das der folgende Code:
Code:
Sub LiveSyncAll()
Run "'C:\Users\rabe\Downloads\test1.xlsm'!DatenSync"
Run "'C:\Users\rabe\Downloads\test2.xlsm'!DatenSync"
Run "'C:\Users\rabe\Downloads\test3.xlsm'!DatenSync"
End Sub
hier zuerstprüft ob die jeweiligen Dateien offen sind, wenn ja dann einfach den Code "Datensync" starten, wenn nein dann die jeweilige Datei öffnen den Code starten und dann wieder schließen!
Einen Code zur allgemeinen Prüfung ob eine bestimmte Datei offen ist habe ich schon:
Code:
Option Explicit
Public Enum XL_FILESTATUS
XL_UNDEFINED = -1
XL_CLOSED
XL_OPEN
XL_DONTEXIST
End Enum
Public Function FileStatus(xlFile As String) As XL_FILESTATUS
On Error Resume Next
Dim File%: File = FreeFile
Err.Clear
Open xlFile For Binary Access Read Lock Read As #File
Close #File
Select Case Err.Number
Case 0: FileStatus = XL_CLOSED
Case 70: FileStatus = XL_OPEN
Case 76: FileStatus = XL_DONTEXIST
Case Else: FileStatus = XL_UNDEFINED
End Select
End Function
Function PrüfungDateiOffen() As Boolean
Dim strFile As String
PrüfungDateiOffen = True
strFile = ThisWorkbook.Path & "\" & "DB.xlsm"
If FileStatus(strFile) = XL_CLOSED Then
Else
MsgBox "Datenbank wird bereits bearbeitet, bitte versuchen Sie es später noch einmal!"
Exit Function
End If
PrüfungDateiOffen = False
End Function
Meine Fragen, wie kann ich beide Codes kombinieren, damit ich mein Vorhaben umsetzten kann?
Vielen Dank im Voraus
VG
Alexandra