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
du mußt das Makro nur wie folgt beginnen, anstatt des Namens:
Sub auto_open()
Gruß
M. Wendeler
http://www.wendelers.de
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
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
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
Um ein Excel Makro beim Öffnen einer Arbeitsmappe automatisch auszuführen, kannst du folgenden VBA-Code verwenden:
Öffne die Excel-Arbeitsmappe, in der du das Makro hinzufügen möchtest.
Drücke ALT + F11, um den VBA-Editor zu öffnen.
Suche im Projekt-Explorer (links) die gewünschte Arbeitsmappe und klicke mit der rechten Maustaste darauf.
Wähle Einfügen und dann Modul.
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
Schließe den VBA-Editor und speichere die Arbeitsmappe als Excel-Makro-fähige Arbeitsmappe (*.xlsm).
Wenn du die Datei das nächste Mal öffnest, wird das Makro automatisch ausgeführt.
Sub auto_open() korrekt geschrieben ist. Achte auf die Groß- und Kleinschreibung.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
Auto_Open() Methode:
Verwende Sub Auto_Open() für eine ähnliche Funktionalität, aber beachte, dass Workbook_Open() bevorzugt wird, da es spezifischer ist.
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
Workbook_Open() für eine präzisere Steuerung und bessere Lesbarkeit deines Codes.On Error Resume Next, um sicherzustellen, dass das Makro auch bei Fehlern weiterläuft.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.