VBA – Globale Variablen
In diesem Tutorial werden wir globale Variablen in VBA behandeln.
Variablen in VBA können verschiedene Geltungsbereiche haben. Der Geltungsbereich einer Variablen basiert auf ihrer Position im Code und der Art und Weise, wie sie deklariert wurde. Der Geltungsbereich einer Variablen gibt an, wo sie sichtbar ist und wo sie verwendet werden kann.
Variable auf Prozedurebene
Diese Variablen können nur innerhalb der Sub-Prozedur oder Funktion verwendet werden, in der sie deklariert sind. Sie müssen eine Variable der Prozedurebene mit dem Schlüsselwort Dim deklarieren. Außerdem müssen Sie sie innerhalb der betroffenen Sub-Prozedur oder Funktion platzieren. Die Art und Weise, wie Sie eine Variable der Prozedurebene deklarieren, ist im folgenden Code dargestellt:
Sub VariableAufProzedurebeneDeklarieren()
Dim eineZahl As Integer
eineZahl = 5
MsgBox eineZahl
End Sub
Das Ergebnis ist:
Sie können diese Variable nur innerhalb der Sub-Prozedur namens VariableAufProzedurebeneDeklarieren() verwenden, da sie sich in dieser Sub-Prozedur befindet und wir das Schlüsselwort Dim verwendet haben. Wenn Sie sie von einer anderen Sub-Prozedur aus aufrufen, erhalten Sie den folgenden Kompilierfehler:
Variable auf Modulebene
Sie können eine Variable auf Modulebene in allen Sub-Prozeduren oder Funktionen innerhalb desselben Moduls verwenden. Sie müssen die Variablendeklaration am Anfang des Moduls im Abschnitt Declarations unter der Anweisung Option Explicit platzieren und das Schlüsselwort Dim verwenden:
Wenn wir die zweite Sub-Prozedur ausführen, erhalten wir das folgende Ergebnis in Zelle A1 der Arbeitsmappe anstelle einer Fehlermeldung:
Variable auf globaler Ebene
Sie können eine globale Variable in Ihren Modulen, Funktionen, Sub-Prozeduren und Klassen verwenden. Sie deklarieren eine globale Variable im Abschnitt Declarations unter der Anweisung Option explicit und unter Verwendung des Schlüsselworts Global. Die Art und Weise, wie Sie eine globale Variable deklarieren, ist unten dargestellt. Beide Sub-Prozeduren in Modul1 können diese Variable verwenden.
Da es sich bei dieser Variablen um eine globale Variable handelt, können Sie sie auch in Modul2 verwenden:
Wenn Sie diesen Code in Modul2 ausführen, erhalten Sie das folgende Ergebnis:
VBA Coding Made Easy
Stop searching for VBA code online. Learn more about AutoMacro - A VBA Code Builder that allows beginners to code procedures from scratch with minimal coding knowledge and with many time-saving features for all users!Learn More!