VBA – Datentypen – Variablen und Konstanten
In this Article
VBA-Datentypen – Variablen und Konstanten
Dieses VBA-Tutorial wird Ihnen helfen, das Konzept der Variablen und Konstanten zu verstehen. Diese sind für alle Programmiersprachen wichtig, nicht nur für VBA.
Wenn Sie programmieren lernen wollen, müssen Sie verstehen, was Variablen und Konstanten sind und wie Sie sie in Ihrem Code verwenden können.
Was ist eine Variable?
Eine Variable ist ein Wert, den Sie in Ihrem Code deklarieren und der folglich im Speicher Ihres Computers reserviert und gespeichert wird. Sie müssen Ihre Variable benennen und es ist gute Praxis, den Datentyp Ihrer Variablen anzugeben. Mit der Angabe des Datentyps teilen Sie dem Programm mit, welche Art von Daten in Ihrer Variablen gespeichert werden soll.
Sie werden die Variable in Ihrem Code verwenden, und das Programm wird auch auf Ihre Variable zugreifen. Der tatsächliche Wert Ihrer Variablen kann sich ändern, während Ihr Code ausgeführt wird.
In VBA müssen wir eine Dim-Anweisung verwenden, um eine Variable zu deklarieren. Die Art und Weise, wie eine Variable in VBA deklariert wird, ist im folgenden Code dargestellt:
Sub EineVariableDeklarieren()
Dim Produkt_Name As String
Dim Anzahl_Produkte As Integer
End Sub
Sobald Sie Ihre Deklarationsanweisung gemacht haben, können Sie Ihre Variable initialisieren, da das Deklarieren einer Variablen nur Platz im Speicher Ihres Computers reserviert. Wenn Sie Ihre Variable initialisieren, weisen Sie ihr einen Anfangswert zu. Wie man eine Variable in VBA initialisiert, zeigt der folgende Code:
Sub EineVariableInitialisieren()
Dim Anzahl_Produkte As Integer
Anzahl_Produkte = 5000
End Sub
Was die Benennung Ihrer Variablen in VBA betrifft, müssen Sie sicherstellen, dass:
• Es sich nicht um ein reserviertes Schlüsselwort handelt. VBA hat bestimmte reservierte Schlüsselwörter wie Dim, Private, Function, Loop und andere Schlüsselwörter, die Sie in Ihrem Code verwenden werden, und Sie können Ihre Variable nicht nach einem Schlüsselwort benennen.
• Sie bei der Benennung Ihrer Variablen keine Sonderzeichen wie !, @, &, ., # oder Leerzeichen verwenden.
• Der Name Ihrer Variablen nicht länger als 255 Zeichen sein darf.
• Sie einen Variablennamen auch nicht mit einer Zahl beginnen können.
Die verschiedenen in VBA verfügbaren Datentypen
Es gibt viele Datentypen, die Sie in VBA verwenden können. Es gibt jedoch einige gängige Typen, die Sie in den meisten Fällen in Ihrem Code verwenden werden. Diese sind:
• String – wird zum Speichern von Textwerten verwendet.
• Boolean – Hier werden TRUE- oder FALSE-Werte gespeichert.
• Integer – wird verwendet, um Ganzzahlenwerte zu speichern.
• Double – wird verwendet, um Zahlen mit Dezimalstellen zu speichern.
• Date – wird zum Speichern von Datumsangaben verwendet.
Hinweis: Wenn Sie einen Wert in einem String-Datentyp speichern, müssen Sie Anführungszeichen verwenden. Zum Beispiel:
Dim Produkt_Name As String
Produkt_Name = "ABC Product"
Hinweis: Wenn Sie einen Wert in einem Datumsdatentypen speichern, müssen Sie Anführungszeichen verwenden. Zum Beispiel:
Dim Start_Datum as Date
Start_Datum = "1/4/2019"
Tabelle mit allen VBA-Datentypen
Datentyp | Gespeichert | Bereich der Werte |
---|---|---|
Byte | 1 Byte | 0 bis 255 |
Integer | 2 Byte | -32.768 bis 32.767 |
Single | 4 Bytes | -3,402823E38 bis -1,401298E-45 für negative Werte, 1,401298E-45 bis 3,402823E38 für positive Werte |
Long | 4 Bytes | -2.147.483.648 bis 2.147.483.648 |
Double | 8 Bytes | -1,79769313486232E+308 bis -4,94065645841247E-324 für negative Werte, 4,94065645841247E-324 bis 1,79769313486232E+308 für positive Werte. |
Decimal | 14 Bytes | +/-79,228,162,514,264,337,593,543,950,335 für keine Dezimalstellen, +/-7.9228162514264337593543950335 für 28 Stellen rechts vom Dezimalpunkt |
Date | 8 Bytes | 1. Januar 100 bis 31. Dezember 9999 |
Currency (Währung) | 8 Bytes | -922.337.203.685.477.5808 bis 922.337.203.685.477.5807 |
String (variable Länge) | 10 Bytes zusätzlich zur Länge der Zeichenkette | 0 bis 2 Milliarden Zeichen |
String (feste Länge) | länge der Zeichenkette | 1 bis etwa 65.400 |
Object | 4 Bytes | Objekt in VBA |
Boolean | 2 Bytes | Wahr oder Falsch |
Verwendung des Variant-Datentyps
Wenn Sie sich nicht sicher sind, welchen Datentyp Ihre Variable haben soll, oder wenn sie sich wahrscheinlich ändern wird, können Sie den Variant-Datentyp verwenden. Der Variant-Datentyp kann jede Art von Daten mit Ausnahme des String-Datentyps mit fester Länge speichern. Sie deklarieren den Variant-Datentyp auf die folgende Weise:
Dim meinWert As Variant
Verwendung von Option Explicit in VBA
Wenn Sie Option Explicit in VBA verwenden, bedeutet dies, dass Sie all Ihre Variablen deklarieren müssen, was eine gute Idee ist. Sie können sicherstellen, dass Excel immer automatisch Option Explicit in VBE hinzufügt, indem Sie auf Extras>Optionen>Editor gehen und dann „Variablendeklaration erforderlich“ markieren.
Verwendung von Variablen in Ihrem Code
Das folgende Beispiel veranschaulicht alle oben behandelten Konzepte:
Sub VariablenImCodeVerwenden()
Dim Produkt_Name As String
Produkt_Name = "ABC Product"
MsgBox Produkt_Name
End Sub
Das Ergebnis ist:
Was ist eine Konstante?
Eine Konstante ist ähnlich wie eine Variable, aber sie speichert einen Wert, der sich nicht ändern kann. Die Art und Weise, wie man eine Konstante in VBA deklariert, wird im folgenden Code gezeigt:
Sub EineKonstanteDeklarieren()
Const AnzahlderTage = 1
MsgBox AnzahlderTage
End Sub
Das Ergebnis ist:
Hinweis: Sie können eine Konstante als Private deklarieren, was bedeutet, dass Sie sie nur in ihrem eigenen Modul verwenden können, oder Sie können eine Konstante als Public deklarieren, was bedeutet, dass Sie sie in anderen Modulen verwenden können.