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

Wie übernehme ich einen Variablenwert in eine andere Sub?

Forumthread: Wie übernehme ich einen Variablenwert in eine andere Sub?

Wie übernehme ich einen Variablenwert in eine andere Sub?
22.07.2025 15:42:29
Soham235
Eine Anfängerfrage in die Runde...

Unter 'DieseArbeitsmappe' befinden sich einige Private Subs. In der ersten davon habe ich eine True/False-Variable definiert: DIM Antwort as Boolean.
Gibt es eine Möglichkeit, das Ergebnis dieser Variablen in die anderen Private Subs innerhalb 'DieseArbeitsmappe' zu übernehmen?
Ziel wäre es, dass Antwort = True/False darüber entscheiden soll, welche Subs in 'DieseArbeitsmappe' ausgeführt und welche nicht ausgeführt werden.
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wie übernehme ich einen Variablenwert in eine andere Sub?
22.07.2025 15:50:43
cysu11
Hi,

ja, in diese Arbeitsmappe, wenn du dein Code aus dem Modul aufrufst:

Call DeinCode(antwort)

und dein

Sub DeinCode(antwort as boolean)

LG, Alexandra
AW: Wie übernehme ich einen Variablenwert in eine andere Sub?
22.07.2025 16:02:44
GerdL
Moin Soham!
Oder du deklarierst deine Variable außerhalb der Prozedur auf Modulebene (ganz oben).
Dann kannst du ohne Übergabe in jeder Prozedur dieses Moduls darauf zugreifen.

Option Explicit

Dim Antwort As Boolean

Private Sub Egal()
Antwort = True
End Sub

Private Sub Egal2()
If Antwort = False Then Exit Sub
Msgbox "mach was"
End Sub


Gruß Gerd
Anzeige
AW: Wie übernehme ich einen Variablenwert in eine andere Sub?
22.07.2025 16:21:29
Yal
Hallo Soham,

es ist ein bischen schwierig, wenn hier in Forum solche Grundlagen erklärt werden soll, wofür es eigentlich Video-Tutorial wie Sand am Meer gibt...

Entweder wie Gerd es gezeigt hat. Jedoch verwendet er eine Variable ausserhab der Sub. Diese gilt auch innerhalb der Sub, weil übergeordnet definiert.
Wenn Du aber eine Variable innerhalb der Sub (nur innerhalb gültig, musst Du diese als Parameter übergeben:

Private Sub Haupt()

Dim Antwort As Boolean

Debug.Print "Test 1" 'schreibt ins Direktbereich (Menü "Ansicht", "Direktfenster")
Antwort = True
MeineSub Antwort

Debug.Print "Test 2"
Antwort = False
MeineSub Antwort
End Sub

Private Sub MeineSub(MeinParameter As Boolean)
Debug.Print MeinParameter
End Sub


Öffne dabei das Lokal-Fenster (Menü "Ansicht", ...) und lasse den Code im Schritt-Modus laufen (Taste F8). So wird das Thema "Gültigkeitsbereich von Variable" am schnellsten greifbar sein. Siehe auch https://learn.microsoft.com/de-de/office/vba/language/concepts/getting-started/understanding-scope-and-visibility

VG
Yal
Anzeige
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18