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

Makro starten beim Öffnen der Arbeitsmappe

Forumthread: Makro starten beim Öffnen der Arbeitsmappe

Makro starten beim Öffnen der Arbeitsmappe
13.09.2002 14:23:09
Margit
Hallo,
ich möchte beim Start einer Arbeitsmappe bestimmte Symbolleisten, u. a. automatisch ausschalten - am Ende wieder einschalten. Der Code im einzelen fkt. nur die Automatik ...
brauche dringend Hilfe!
Danke im voraus
Margit
Anzeige

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

Betreff
Datum
Anwender
Anzeige
Re: Makro starten beim Öffnen der Arbeitsmappe
13.09.2002 14:25:26
Michael Wendeler
Hallo,

du mußt das Makro nur wie folgt beginnen, anstatt des Namens:

Sub auto_open()

Gruß
M. Wendeler
http://www.wendelers.de

Re: Makro starten beim Öffnen der Arbeitsmappe
13.09.2002 14:37:49
Thomas H.
Hallo,
dazu hätte ich gleich eine Frage, kann man ein Makro auch so beginnen, dass es zB nur einmal beim ersten öffnen im Monat, automatisch ausgeführt wird? Vielleicht eine blöde Frage, aber ev gibt es ja eine kluge Antwort ;)
LG Thomas
Anzeige
Re: Makro starten beim Öffnen der Arbeitsmappe
13.09.2002 14:41:28
Michael Wendeler
Hallo,

du kannst eine auto_open Makro erstellen, das einfach nur die Bedingung abfragt.

Also praktisch ein Makro, das startet wenn die Datei geöffnet wird und dann prüft, ob in diesem Monat die Datei bereits geöffnet wurde. Falls ja, dann soll das Makro beendet werden (Exit sub) falls nein, dann soll folgendes passieren..... oder dann soll folgendes Makro gestartet werden.

Gruß
M. Wendeler
http://www.wendelers.de

Anzeige
originalzustand wiederherstellen
13.09.2002 15:12:37
ingo
hallo michael,

dieser beitrag hat mich dazu gebracht, ebenso dafür zu sorgen, daß meine dateien auf allen rechner die gleichen symnolleisten haben/nicht haben.

aber wie mache ich das ganze beim schlißen rückgängig?

1. mit dem Befehl:
~beginn~
Private Sub Workbook_BeforeClose(Cancel As Boolean)
~end~
macht er gar nix und

2. wüßte ich dann nur wie ich best. symbolleisten wieder einblende, aber ich will ja, das die, die vom jeweiligen user eingerichtet waren wieder aktiviert werden.

kannst du mir hierzu nen tip geben?

danke
ingo

Anzeige
Re: originalzustand wiederherstellen
13.09.2002 15:22:00
Michael Wendeler
Hallo,

dazu aktivierst du den Makrorecorder, zeichnest auf und aktivierst die Symbolleisten. Dann hast Du schon einmal den Code zum einblenden der Symbolleistenn. Dann änderst Du den Namen des AMkros in Sub auto_close() und es wird ausgeführt, wenn die Datei geschlossen wird.

Gruß
M. Wendeler
http://www.wendelers.de

Anzeige
Re: originalzustand wiederherstellen
13.09.2002 15:44:39
ingo
hallo,
leider klappts mit auto_close auch net ;-(
und beim einblenden gehts mir auch darum die symbolleisten wieder anzusprechen die vorher bereits aktiv waren. aber das weiß ich ja net, wenn z.b. ein kollege die datei aufruft...
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Makro beim Öffnen der Arbeitsmappe ausführen


Schritt-für-Schritt-Anleitung

Um ein Excel Makro beim Öffnen einer Arbeitsmappe automatisch auszuführen, kannst du folgenden VBA-Code verwenden:

  1. Öffne die Excel-Arbeitsmappe, in der du das Makro hinzufügen möchtest.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Suche im Projekt-Explorer (links) die gewünschte Arbeitsmappe und klicke mit der rechten Maustaste darauf.

  4. Wähle Einfügen und dann Modul.

  5. Füge den folgenden Code in das Modul ein:

    Sub auto_open()
       ' Dein Makro-Code hier
       MsgBox "Das Makro wird beim Öffnen ausgeführt!"
    End Sub
  6. Schließe den VBA-Editor und speichere die Arbeitsmappe als Excel-Makro-fähige Arbeitsmappe (*.xlsm).

  7. Wenn du die Datei das nächste Mal öffnest, wird das Makro automatisch ausgeführt.


Häufige Fehler und Lösungen

  • Makro wird nicht ausgeführt: Überprüfe, ob deine Excel-Datei als Makro-fähige Datei gespeichert ist (*.xlsm). Außerdem müssen die Excel Makros in den Sicherheitseinstellungen aktiviert sein.
  • Nachricht erscheint nicht: Stelle sicher, dass der Sub auto_open() korrekt geschrieben ist. Achte auf die Groß- und Kleinschreibung.
  • Makro läuft nicht bei jedem Öffnen: Wenn du das Makro nur einmal pro Monat ausführen möchtest, kannst du eine Bedingung hinzufügen, die prüft, ob das Makro bereits in diesem Monat ausgeführt wurde.

Alternative Methoden

  1. Workbook_Open() Methode: Du kannst das Makro auch im ThisWorkbook-Objekt platzieren:

    Private Sub Workbook_Open()
       ' Dein Makro-Code hier
       MsgBox "Das Makro wird beim Öffnen ausgeführt!"
    End Sub
  2. Auto_Open() Methode: Verwende Sub Auto_Open() für eine ähnliche Funktionalität, aber beachte, dass Workbook_Open() bevorzugt wird, da es spezifischer ist.


Praktische Beispiele

Hier sind einige praktische Anwendungen für das Excel Makro beim Öffnen:

  • Automatisches Setzen von bestimmten Einstellungen: Du kannst beim Öffnen der Datei bestimmte Formatierungen oder Einstellungen automatisch anwenden.

    Private Sub Workbook_Open()
      Application.DisplayAlerts = False
      ' Weitere Einstellungen hier
      Application.DisplayAlerts = True
    End Sub
  • Daten laden: Lade Daten aus einer externen Quelle, wenn die Arbeitsmappe geöffnet wird.

    Private Sub Workbook_Open()
      Workbooks.Open "C:\Pfad\zu\deiner\Datei.xlsx"
    End Sub

Tipps für Profis

  • Ereignisgesteuerte Programmierung: Nutze Workbook_Open() für eine präzisere Steuerung und bessere Lesbarkeit deines Codes.
  • Fehlerbehandlung implementieren: Verwende On Error Resume Next, um sicherzustellen, dass das Makro auch bei Fehlern weiterläuft.
  • Testen: Teste dein Makro in einer Kopie der Datei, um unerwünschte Änderungen zu vermeiden.
  • Dokumentation: Kommentiere deinen Code, um später einfacher nachvollziehen zu können, was jeder Teil des Makros bewirkt.

FAQ: Häufige Fragen

1. Wie kann ich das Makro nur einmal pro Monat ausführen?
Du kannst eine Bedingung hinzufügen, die prüft, ob das Makro bereits in diesem Monat ausgeführt wurde. Speichere das Datum in einer Zelle und vergleiche es beim Öffnen.

2. Was ist der Unterschied zwischen auto_open und Workbook_Open?
auto_open ist eine ältere Methode, die nicht in allen Situationen zuverlässig ist. Workbook_Open ist die bevorzugte Methode, da sie spezifisch für das Öffnen der Arbeitsmappe ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige