1.8k Aufrufe
Gefragt in Tabellenkalkulation von cccs Einsteiger_in (59 Punkte)
Frohe Ostern,
ich habe ein Makro das überprüft ob eine Datei schon offen ist, wenn nicht wir diese geöffnet. Das funktioniert aber nur wenn die Datei auf "C" ist. Sind Verzeichnisse dazwischen funktioniert das Makro nicht. Ich füge den Code mal ein. Schonmal vielen Dank.
Gruß Claus
Sub Datei_öffnen()

' Beispiel: C:\MAPPE2.XLS (richtig!) öffnen
Dim bExists As Boolean
Dim oWorkbook As Object

' Prüfen ob Datei bereits geöffnet ist
bExists = False
With Application
For Each oWorkbook In .Workbooks
If UCase$(oWorkbook.Name) = "MAPPE2.XLS" Then
' Jetzt aktivieren
Windows(oWorkbook.Name).Activate
bExists = True
MsgBox "Die Mappe ist bereits geöffnet !"
Exit For
End If
Next
End With

' Mappe neu laden!
If Not bExists Then
On Error Resume Next
Workbooks.Open Filename:="C:\Mappe2", ReadOnly:=False
On Error GoTo 0
End If
End Sub

5 Antworten

0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
gebe hier
Workbooks.Open Filename:="C:\Mappe2", ReadOnly:=False
den kompletten Ordner an.

Gruß hajo
0 Punkte
Beantwortet von cccs Einsteiger_in (59 Punkte)
Hallo Hajo,
sobald ich den ersten Ordner dahinter schreibe(

Workbooks.Open Filename:="C:\Benutzer\MAPPE2", ReadOnly:=False)

funktioniert das Makro nicht mehr

Gruß Claus
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo Claus,

bei mir haben alle Exceldateien einen Dateityp XLS; XLSM usw.
Vieleicht gibt es die Datei dort nicht?

Gruß Hajo
0 Punkte
Beantwortet von cccs Einsteiger_in (59 Punkte)
Hallo Hajo,
ich habe anstatt Benutzer Users geschrieben und es funktioniert.

Gruß Claus
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo Claus,

das ist de Vorteil, wenn man den Ordner aus dem Windows Explorere kopiert.

Gruß Hajo
...