HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Forumbeitrag
Excel-Version des Fragestellers:
365 Business
Erfahrungslevel des Fragestellers:
Excel gut - VBA bescheiden
Dieter
24.10.2025 17:42:33
AW: Das liegt in der...
Dann hat meine erste Idee abzufragen ob die Excel Datei bereits offen ist gar keinen Sinn ergeben? Ich hätte jetzt gedacht wenn die Datei offen ist und ich diese einfach nochmal Abfrage bzw. den Dateinamen und das Sheet angebe in das geschrieben werden soll dass das dann läuft.

Wie soll ich es jetzt machen damit alle möglichen Varianten abgefangen werden?
Mögliche Fälle können sein:
1. Nur die eine Word Datei die ich ausführen möchte ist offen
2. Mehrere unterschiedliche Word Dateien sind offen aber ich führe nur die eine aus
3. Die Ziele Excel Datei ist offen
4. Die Ziel Excel Datei ist offen und andere

Wie geht das mit der ROT?

Grüße Dieter
Als Antwort auf diesen Beitrag
Case
24.10.2025 15:14:03
Das liegt in der...
Moin Dieter, :-)

... Regel daran, wenn mehrere Excel-Instanzen offen sind. Die werden in der ROT registriert: ;-)
https://learn.microsoft.com/en-us/windows/win32/com/registering-objects-in-the-rot

"GetObject" nimmt sich in der Regel die erste Instanz davon - und das muss nicht die mit deiner Datei sein. ;-)

"CreateObject" erstellt eine neue Instanz - da geht es immer. ;-)

Sind bei dir mehrere Instanzen von Excel offen, dann kann man entweder die ROT durchlaufen, oder mit einer Dummy-Schleife mehrere Instanzen durchlaufen und dann die richtige Datei schnappen. ;-)

Servus
Case
Folgenachrichten
Antwort auf Beitrag erstellen

Beispieldatei hochladen