Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Workbook open wird nicht ausgeführt

Workbook open wird nicht ausgeführt
06.12.2022 17:41:09
Manuel
Hallo Leute,
Folgendes Problem: mir ist aufgefallen, dass bei bereits geöffneten Excel (zb. Filename A) das Makro „Workbook_open“ (bei File B) nicht gestartet wird.
Wenn File A geschlossen und nur File B geöffnet wird, funktioniert es.
Kennt jemand das Problem und gibt es Alternativen ?
Danke vorweg
Manuel
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Workbook open wird nicht ausgeführt
06.12.2022 17:56:57
ralf_b
wie hast du das denn überprüft?
AW: Workbook open wird nicht ausgeführt
06.12.2022 18:00:16
Oberschlumpf
Hi Manuel
dazu fällt mir - ohne deine Datei zu kennen - als Grund nur ein, dass du mit Öffnen von Datei A die Eigenschaft Application.EnableEvents zwar auf False setzt, mit Ende des Makros aus Datei A aber vergessen hast, die Eigenschaft auch wieder auf True zu setzen.
Da ich aber denke, dass du mit VBA gut genau das schon überprüft hast, lass ich den Beitrag weiter offen.
Hilfts?
Ciao
Thorsten
Anzeige
AW: Workbook open wird nicht ausgeführt
06.12.2022 18:07:56
Manuel
Danke schon mal für eure Antworten.
File A ist eine reine xls Datei ohne Makros. Überprüft, ob Workbook Open bei File B gestartet wird habe ich mit dem Befehl msgbox „Test“ - aber ohne Erfolg. :(
AW: Workbook open wird nicht ausgeführt
06.12.2022 18:27:15
Oberschlumpf
hmm...mir bleibt erst mal nur weiterraten...
a) mach von File A eine Kopie, starte zuerst die Kopie-Datei, dann File B ....is das Problem gelöst, dann stimmt irgdwas mit File A (Original) nicht
b) schon mal Computer neu gestartet?
c) oder erstell von File A + B jeweils eine Kopie, ersetz in beiden Files die Daten durch BSP-Daten und zeig uns beide Files per Upload
mehr weiß ich gerade nicht
Anzeige
AW: Workbook open wird nicht ausgeführt
06.12.2022 19:04:02
onur
Poste doch mal die Datei, von mir aus nur mit einem leeren Blatt.
AW: Workbook open wird nicht ausgeführt
06.12.2022 20:31:58
snb
Lass mal laufen

Sub M_snb()
application.enableevents=true
End Sub
und öffne dann Datei B
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Automatisierung mit Workbook Open in Excel VBA


Schritt-für-Schritt-Anleitung

  1. Öffne Excel und drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu starten.

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf deinen VBA-Projektordner und wähle „Einfügen“ > „Modul“.

  3. Erstelle das Workbook Open Ereignis: Verwende folgenden Code, um das Makro bei Öffnen der Datei automatisch auszuführen:

    Private Sub Workbook_Open()
       MsgBox "Workbook wurde geöffnet!"
    End Sub
  4. Speichere die Datei als Makro-enabled Workbook (.xlsm).

  5. Teste das Makro: Schließe die Datei und öffne sie erneut, um zu sehen, ob das Workbook_Open-Ereignis funktioniert.


Häufige Fehler und Lösungen

  • Problem: Das Workbook_Open-Ereignis wird nicht ausgeführt, wenn eine andere Excel-Datei bereits geöffnet ist.

    • Lösung: Stelle sicher, dass Application.EnableEvents auf True gesetzt ist. Überprüfe auch, ob andere Makros möglicherweise diese Einstellung ändern.
  • Problem: MsgBox zeigt nicht an, dass das Makro läuft.

    • Lösung: Überprüfe die Schreibweise des Makro-Namens und stelle sicher, dass die Datei als .xlsm gespeichert ist.
  • Problem: Excel friert ein oder reagiert nicht.

    • Lösung: Starte Excel neu und überprüfe, ob alle anderen Makros deaktiviert sind.

Alternative Methoden

Wenn das Workbook_Open-Ereignis nicht funktioniert, kannst du alternative Methoden in Betracht ziehen:

  • Manuelles Ausführen des Makros: Erstelle eine Schaltfläche in deiner Excel-Arbeitsmappe, die das Makro ausführt, wenn sie angeklickt wird.

    Sub Button_Click()
      Call Workbook_Open
    End Sub
  • Verwendung von Workbook_Open in einer speziellen Arbeitsmappe: Speichere das Makro in der Personal.xlsb, um es in jeder Arbeitsmappe verwenden zu können.


Praktische Beispiele

Hier sind einige nützliche Beispiele, wie du das Workbook_Open-Ereignis in deiner Arbeit einsetzen kannst:

  • Automatisches Einfügen eines Datums:

    Private Sub Workbook_Open()
       Sheets("Tabelle1").Range("A1").Value = Date
    End Sub
  • Datenprüfung beim Öffnen:

    Private Sub Workbook_Open()
       If IsEmpty(Sheets("Tabelle1").Range("A1").Value) Then
           MsgBox "Bitte fülle das Feld A1 aus!"
       End If
    End Sub

Tipps für Profis

  • Nutze Error Handling in deinem Workbook_Open-Ereignis, um unerwartete Fehler zu vermeiden.

    Private Sub Workbook_Open()
       On Error GoTo Fehlerbehandlung
       ' Dein Code hier
       Exit Sub
    Fehlerbehandlung:
       MsgBox "Ein Fehler ist aufgetreten: " & Err.Description
    End Sub
  • Teste dein Makro gründlich, insbesondere wenn du mit mehreren Dateien arbeitest, um sicherzustellen, dass Application.EnableEvents nicht versehentlich deaktiviert wird.


FAQ: Häufige Fragen

1. Warum wird mein Workbook_Open-Ereignis nicht ausgelöst?
Es könnte sein, dass Application.EnableEvents auf False gesetzt ist. Stelle sicher, dass es am Ende deines Makros wieder auf True gesetzt wird.

2. Kann ich das Workbook_Open-Ereignis für mehrere Arbeitsmappen verwenden?
Ja, du kannst das Workbook_Open-Ereignis in jeder Arbeitsmappe definieren, indem du den entsprechenden Code in das ThisWorkbook-Objekt der jeweiligen Arbeitsmappe einfügst.

3. Was ist der Unterschied zwischen Workbook_Open und Auto_Open?
Workbook_Open ist ein Ereignis, das ausgeführt wird, wenn die Arbeitsmappe geöffnet wird, während Auto_Open ein Standardmakro ist, das beim Öffnen der Arbeitsmappe ausgeführt wird, egal wo es sich befindet.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige