Workbook aktivieren ohne workbooks.open

Hallo,

ich hole mir per:

Datei = Application.GetOpenFilename(, , „Auszuwertende Datei öffnen“, „Auswerten“)

Den Namen einer Datei. Während ich diese Datei auswerte wechsle ich mehrmals das Fenster. Wenn ich dann wieder zurückwechseln will, muss ich das immer über

Workbooks.Open Datei

machen, denn:

Windows(datei).Activate

funktioniert nicht, da der Pfad noch mit angegeben ist. Bei einer kleinen Datei funktioniert das mit open ja noch ganz gut, aber bei 30.000 Zeilen dauert es einfach zu lang.

Weiß jemand Rat?

Gruß

Hallo, Sebastian!

ich hole mir per:
Datei = Application.GetOpenFilename(, , „Auszuwertende Datei
öffnen“, „Auswerten“)
Den Namen einer Datei. Während ich diese Datei auswerte
wechsle ich mehrmals das Fenster. Wenn ich dann wieder
zurückwechseln will, muss ich das immer über
Workbooks.Open Datei

Wenn Du Dir ein Workbook-Objekt definierst (dim wbDatei as Workbook), kannst Du mit Set wbDatei=Workbooks.Open(Datei) das Ding dort hineinlesen.

Dann kannst Du statt

Windows(datei).Activate

wbDatei.Activate (oder eher wbDatei.Select) schreiben. Oder als Alternative Windows(wbDatei.Name).Activate

.Name enthält den Namen ohne Pfad (quasi „FileTitle“), .FullName den kompletten Pfad.

funktioniert nicht, da der Pfad noch mit angegeben ist. Bei
einer kleinen Datei funktioniert das mit open ja noch ganz
gut, aber bei 30.000 Zeilen dauert es einfach zu lang.

Vor allem wird die Datei mehrfach geöffnet, wenn Du sie nicht schließt.

Gruß, Manfred

Hallo Manfred.

Funktioniert toll!

Vielen Dank! :smile: