Wie setze ich Variablen beim Starten einer Excel-Tabelle mit VBA?

Antwort

Um Variablen wie `Set wsKriterien = ThisWorkbook.Worksheets("Kriterien")` beim Starten einer Excel-Datei automatisch zu setzen, kannst du das Workbook-Open-Ereignis im VBA-Editor nutzen. So gehst du vor: 1. **VBA-Editor öffnen:** Drücke `ALT + F11`, um den VBA-Editor zu öffnen. 2. **Zum "DieseArbeitsmappe"-Modul wechseln:** Im Projekt-Explorer auf der linken Seite doppelklicken auf `DieseArbeitsmappe` (englisch: `ThisWorkbook`). 3. **Workbook_Open-Ereignis einfügen:** Füge folgenden Code ein: ```vba Dim wsKriterien As Worksheet Private Sub Workbook_Open() Set wsKriterien = ThisWorkbook.Worksheets("Kriterien") ' Hier kannst du weitere Aktionen mit wsKriterien durchführen End Sub ``` **Wichtig:** - Die Variable `wsKriterien` ist in diesem Beispiel nur innerhalb des Moduls gültig. - Wenn du sie in mehreren Modulen verwenden möchtest, deklariere sie als `Public` ganz oben in einem allgemeinen Modul: ```vba Public wsKriterien As Worksheet ``` und dann im `Workbook_Open`-Ereignis: ```vba Set wsKriterien = ThisWorkbook.Worksheets("Kriterien") ``` 4. **Datei als Makro-Arbeitsmappe speichern:** Speichere die Datei als `.xlsm`, damit Makros ausgeführt werden können. **Ergebnis:** Jedes Mal, wenn die Arbeitsmappe geöffnet wird, wird die Variable `wsKriterien` automatisch auf das Arbeitsblatt "Kriterien" gesetzt. Weitere Infos zu VBA-Ereignissen findest du z.B. bei [Microsoft Learn](https://learn.microsoft.com/de-de/office/vba/api/excel.workbook.open).

Kategorie: Excel Tags: VBA Variable Workbook
Frage stellen und sofort Antwort erhalten

Verwandte Fragen

Wie kann ich mit VBA die Zelle mit dem Namen 'Konto' auswählen?

Um in VBA eine Zelle mit dem Namen „Konto“ auszuwählen, kannst du den Namen direkt über das `Range`-Objekt ansprechen. Voraussetzung ist, dass der Name „Konto“ als be... [mehr]

Wie kann ich mit einem VBA-Makro eine Zellverknüpfung zu einem anderen, nicht geöffneten Arbeitsblatt aktualisieren?

Um eine Verknüpfung (z.B. eine Formel wie `='[AndereDatei.xlsx]Tabelle1'!A1`) in einer Zelle per VBA zu aktualisieren, ohne dass die verknüpfte Arbeitsmappe geöffnet ist, kann... [mehr]

Was bewirkt der VBA-Code ThisWorkbook.Names("z06_a1401111_Bericht").RefersToR1S1 = "='z06_a1401111_Bericht'!R1S1:R20S18"?

Der Ausdruck ```vba ThisWorkbook.Names("z06_a1401111_Bericht").RefersToR1S1 = "='z06_a1401111_Bericht'!R1S1:R20S18" ``` weist dem definierten Namen **z06_a1401111_Beric... [mehr]

Wie kann der VBA-Code angepasst werden, damit in 'Personen einzelnd drucken' der Name in Spalte C9-C66 gesucht und mit dem Wert im Arbeitsplan verglichen wird?

Um die Schleife so umzubauen, dass **in "Personen einzelnd drucken"** in den Zellen **C9:C66** nach dem Namen gesucht und mit der Spalte B im "Arbeitsplan" verglichen wird, muss di... [mehr]

Warum erkennt mein Excel VBA-Makro das Datum im Arbeitsplan nicht, obwohl es als Datum hinterlegt ist, aber in einer anderen Tabelle als Zahl angezeigt wird?

Das Problem liegt sehr wahrscheinlich an der Art, wie Excel intern mit Datumswerten umgeht. Ein Datum in Excel ist eigentlich eine Zahl (z.B. 45123 für den 01.09.2023), aber die Anzeige kann unte... [mehr]

Wie lege ich Drucktitel in Excel VBA fest?

Um in Excel VBA Drucktitel festzulegen, kannst du den folgenden Code verwenden. Dieser Code setzt die Drucktitel für die Zeilen und Spalten, die auf jeder gedruckten Seite wiederholt werden solle... [mehr]

Excel VBA Zelle zeigt Formel als Text, wie ändern?

Wenn eine Zelle in Excel eine Formel als Text anzeigt, kann das verschiedene Ursachen haben. Hier sind einige Schritte, um das Problem zu beheben: 1. **Überprüfen der Formatierung**: Stelle... [mehr]

Excel VBA: Farbige Reiter drucken und PDF erstellen.

Um in Excel VBA die farbig markierten Reiter (Arbeitsblätter) auszuwählen, die Druckeinstellungen so zu ändern, dass sie auf eine Seite passen, und anschließend eine PDF-Datei zu... [mehr]

Excel VBA: Reiter, die farbig markiert sind, Druckeinstellung auf eine Seite darstellen und eine PDF erstellen?

Um in Excel VBA die farbig markierten Reiter (Arbeitsblätter) auszuwählen, die Druckeinstellungen so zu ändern, dass sie auf eine Seite passen, und anschließend eine PDF zu erstel... [mehr]

Wie kann ich in Excel VBA die farbig markierten Reiter drucken und die Druckeinstellung so festlegen, dass das Blatt auf einer Seite dargestellt wird?

Um in Excel VBA die farbig markierten Blätter zu drucken und dabei die Druckeinstellungen so zu setzen, dass jedes Blatt auf einer Seite dargestellt wird, kannst du den folgenden Code verwenden.... [mehr]