wie frage ich ab, welche Arbeitsmappen, die in einem bestimmten Unterverzeichnis liegen, geöffnet sind?
Danke
Johannes
wie frage ich ab, welche Arbeitsmappen, die in einem bestimmten Unterverzeichnis liegen, geöffnet sind?
Danke
Johannes
Option Explicit
Sub DateiZustand()
Dim Pfad As String, FSEObjekt As Object, index1 As Single
Pfad = "D:\Eigene Dateien\Eigene Tabellen\" ' hier deinen Pfad eingeben
Set FSEObjekt = Application.FileSearch
With FSEObjekt
.NewSearch
.LookIn = Pfad
.FileType = msoFileTypeExcelWorkbooks
.Filename = "*.xls"
If .Execute > 0 Then
For index1 = 1 To .FoundFiles.Count
If Not DateiIstFrei(.FoundFiles(index1)) Then
MsgBox "Datei " & .FoundFiles(index1) & " ist bereits geöffnet !"
End If
Next index1
End If
End With
End Sub
Function DateiIstFrei(sDateiname As String) As Boolean
Dim hFile As Integer
On Error Resume Next
hFile = FreeFile()
Open sDateiname For Random Access Read Lock Read Write As #hFile
If Err Then
DateiIstFrei = False
Else
DateiIstFrei = True
End If
Close #hFile
End Function
Gruß
Nepumuk