Variablen deklarieren (Microsoft Word)
Wenn Sie jemals Makros programmiert haben, sind Sie wahrscheinlich damit vertraut, wie Sie Variablen mit dem Schlüsselwort Dim definieren. Beispielsweise können Sie eine Ganzzahlvariable mit dem Namen MyVar wie folgt definieren:
Dim MyVar As Integer
Dies ist sehr einfach und funktioniert gut in Ihrem Code. Sie könnten jedoch versucht sein, mehrere Variablen pro Zeile zu definieren:
Dim x, y, z As Integer
In einigen Versionen der BASIC-Sprache werden drei Variablen definiert und initialisiert, die jeweils als Ganzzahl vorliegen. In VBA scheint es auch richtig zu laufen, und es wird kein Fehler generiert. Es gibt jedoch ein kleines Problem: Nur die letzte Variable (z) ist tatsächlich als Ganzzahl definiert.
Sie können sehen, wie dies funktioniert, indem Sie den folgenden Code verwenden:
Sub DimTest() Dim x, y, z As Integer MsgBox "x is type " & VarType(x) MsgBox "y is type " & VarType(y) MsgBox "z is type " & VarType(z) End Sub
Wenn Sie das Makro ausführen, zeigen die ersten beiden Meldungsfelder, dass der Variablentyp für x und y 0 ist, was bedeutet, dass er nicht initialisiert ist.
Nur das letzte Meldungsfeld (für z) zeigt einen Variablentyp von 2, was eine Ganzzahl bedeutet.
Die Lösung besteht darin, sicherzustellen, dass Sie Ihre Variablen als eine pro Zeile deklarieren oder die vollständige Syntax für jede Variable wie folgt verwenden:
Dim x As Integer, y As Integer, z As Integer
_Hinweis: _
Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der WordTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.
WordTips ist Ihre Quelle für kostengünstige Microsoft Word-Schulungen.
(Microsoft Word ist die weltweit beliebteste Textverarbeitungssoftware.) Dieser Tipp (731) gilt für Microsoft Word 97, 2000, 2002 und 2003. Sie finden eine Version dieses Tipps für die Multifunktionsleistenschnittstelle von Word (Word 2007) und später) hier: