Mit Variablen arbeiten  nach oben

Wollen Sie mit einer Variablen arbeiten, muss diese im Gegensatz zu anderen Programmiersprachen nicht explizit deklariert werden; vielmehr kann wird die Variable automatisch erstellt sobald sie das erste mal verwendet wird. Soll die Variable einen Wert aufnehmen, geschieht dies meist durch die Zuweisung des Wertes. Man notiert dazu einfach den Variablennamen, das Ist-Gleich-Zeichen als "Zuweiser" sowie den zu speichernden Wert. Beispiel:

MeineVariable = "Ich bin ein Wert"

Im Beispiel speichert der Interpreter also unter der Bezeichnung MeineVariable den Text "Ich bin ein Wert".

Variablen deklarieren

Neben der oben genannten impliziten Verfahrensweise, kann eine Variable natürlich auch wie in anderen Programmiersprachen explizit deklariert werden. Soll dies geschehen, notiert man das Wort dim gefolgt vom Variablennamen. Der Interpreter wird dadurch explizit angewiesen die Variable zu registrieren und entsprechend Speicher zur Verfügung zu stellen. Ebenso können Sie mit dim aber auch gleich mehrere Variablen deklarieren in dem diese einfach durch Kommata getrennt notiert werden. Beispiel:

Dim MeineVariable, ZweiteVariable
MeineVariable = "Ich bin ein Wert"

Geltungsbereich von Variablen  nach oben

Eine Variable hat grundsätzlich immer nur Geltung in dem Bereich in dem Sie deklariert wird bzw. bei impliziten Variablen dort wo sie das erste mal verwendet wird. In der Praxis heißt das, dass eine Variable die innerhalb einer Prozedur erstellt wird, auch nur innerhalb dieser Prozedur verwendet werden kann. Wird die Prozedur beendet, gibt der Interpreter auch die Variable wieder frei. Ebenso können Variablen die außerhalb einer Prozedur erstellt werden (also im Modul selbst) nicht innerhalb einer Prozedur verwendet werden. Damit ist es prinzipiell möglich, innerhalb und außerhalb einer Prozedur eine Variable zu verwenden die den gleichen Namen trägt aber einen anderen Wert speichert.
Um derartige Überschneidungen zu vermeiden bzw. um eine Variable dennoch auch anderswo einzusetzen definiert VBScript bestimmte Anweisungen, die den Geltungsbereich einer Variablen näher bestimmen. Diese sind:

Öffentliche Variablen

Öffentliche Variablen, sind Variablen die in allen zum aktuellen Projekt gehörenden Modulen und Prozeduren Geltung finden. Soll eine solche Variable deklariert werden, wird dazu das Wort public anstelle von dim verwendet. Beispiel:

Public MeineVariable

Bitte beachten Sie, dass derartige Deklarationen jedoch nur auf Modulebene stehen dürfen. Sollten Sie eine öffentliche Variable innerhalb einer Prozedur erzeugen wollen, wird ein Fehler ausgegeben.

Private Variablen

Private Variablen, sind Variablen die in allen zum aktuellen Modul gehörenden Prozeduren Geltung finden. Soll eine solche Variable deklariert werden, wird dazu das Wort private anstelle von dim verwendet. Prinzipiell unterscheiden sich dim und private jedoch nicht. Beispiel:

private MeineVariable

Bitte beachten Sie, dass derartige Deklarationen im Gegensatz zu dim jedoch nur auf Modulebene stehen dürfen. Sollten Sie eine öffentliche Variable innerhalb einer Prozedur erzeugen wollen, wird ein Fehler ausgegeben.

Variablentypen  nach oben

Im Gegensatz zu anderen Programmiersprachen gibt es in VBScript nur einen einzigen Variablentyp: den Variant. Das ist als ein "Mischtyp" zu verstehen: Er nimmt je nach Bedarf den entsprechenden Typ an, der erwartet wird. Speichern Sie beispielsweise eine Zahl in einer Variablen, wird diese auch als Zahl gespeichert. Wollen Sie diese Zahl nun aber in einen Text (String) einbauen, braucht die Zahl nicht erst in Text umgewandelt werden, sondern kann gleich als Text verwendet werden. Gleiches funktioniert auch andersherum: Speichert man eine Textzahl, kann man mit dieser auch rechnen.
Insgesamt gibt es 16 Untertypen zwischen denen VBScript selbständig unterscheiden kann. Diese sind:

VariablentypTypenkonstanteUmwandlung mitTypenwertBeschreibung
EmptyvbEmpty-0Entspricht einer nicht initialisierten Variablen (kein Wert)
NullvbNull-1Entspricht einer Variablen mit ungültigen Daten
IntegervbIntegerCInt2Entspricht einer Ganzzahl im Bereich von -32768 bis 32767
Long IntegervbLongCLng3Entspricht einer Ganzzahl im Bereich von -2147483648 bis 2147483647
SinglevbSingleCSng4Entspricht einer Fließkommazahl mit einer Genauigkeit von -3,402823E38 bis -1,401298E-45 für negative Werte und von 1,401298E-45 bis 3,402823E38 für positive Werte
DoublevbDoubleCDbl5Entspricht einer Fließkommazahl mit einer Genauigkeit von -1,79769313486232E308 bis -4,94065645841247E-324 für negative Werte und von 4,94065645841247E-324 bis 1.79769313486232E308 für positive Werte
CurrencyvbCurrencyCCur6Entspricht einer Währungsanzeige von -922337203685477,5808 bis 922337203685477,5807
Date (Time)vbDateCDate7Entspricht einem Datum angefangen vom 01.01.100 bis zum 31.12.9999
StringvbStringCStr8Entspricht einer Zeichenfolge (Text) mit bis zu 2 Milliarden Zeichen
ObjectvbObject-9Entspricht einem Objekt
ErrorvbError-10Entspricht einem Fehler
BooleanvbBooleanCBool11Entspricht einem Boolean (Wahrheitswert) und kann die Werte true oder false bzw. 0 oder 1 annehmen.
VariantvbVariant-12Entspricht einem Variant (wird nur bei Arrays mit Variant-Werten eingesetzt)
DataObjectvbDataObject-13Entspricht einem Datenzugriffsobjekt
BytevbByteCByte17Entspricht einem Byte (Ganzzahl) im Bereich von 0 bis 255
ArrayvbArray-8192Entspricht einem Array (Liste)

Da es bei dieser Art der Typenverwendung auch leicht zu Fehlern kommen kann, erlaubt VBScript es die Variablen in einen expliziten Typ zu konvertieren. Man verwendet dazu die in der obigen Tabelle in der Spalte "Umwandlung mit" angegebenen Funktionen. Beispiel:

a = CByte(1)  ' Variable a ist jetzt ein Byte vom Wert 1
b = CBool(a)  ' Variable b übernimmt den Wert von 
              ' a als Boolean und ist nun true/wahr

Ebenfalls lässt sich mittels der Funktion Vartype() der Type einer Variablen ausfragen. Zurückgegeben wird dann ein dem Typ entsprechender Wert (in der Tabelle mit Typenwert gekennzeichnet), der auch mittels der Typenkonstante verglichen werden kann.

Arraytypen

Arrays kann man sich wie eine Liste von bestimmten Werten vorstellen. Jeder Wert bekommt einen eindeutigen Index innerhalb des Arrays und besitzt damit ein Erkennungsmerkmal. Der Vorteil von Arrays im Gegensatz zu einfachen Variablen liegt darin, dass Sie nahezu unendlich viele Werte in einer sozusagen sortierten Reihenfolge aufnehmen können (die Sortierung erfolgt durch Sie selbst). Ein Array wird dabei genauso wie jede andere Variable auch erstellt - einziger Unterschied: Nach dem Variablennamen folgt in runden Klammern der letzte Index des Arrays (also die Anzahl der Felder plus 1) - das erste Feld hat dabei immer den Index 0. Beispiel:

dim meinarray(4)

meinarray(0) = "Ich"
meinarray(1) = "bin"
meinarray(2) = "ein"
meinarray(3) = "VB-"
meinarray(4) = "Array"

Der Vorteil eines Arrays liegt unter anderem auch darin, dass man damit mehrere Ebenen an Daten speichern kann. So ist es möglich neben einer statischen Liste auch eine Tabelle oder ein 3D oder mehr-D Objekt zu erzeugen. Man notiert dazu einfach bei der Definition einen weiteren Indexwert innerhalb der Klammern. Beispiel:

dim meinarray(1,1)

meinarray(0,0) = "Oben links"
meinarray(0,1) = "Oben rechts"
meinarray(1,0) = "Unten links"
meinarray(1,1) = "Unten rechts"

Konstanten  nach oben

Konstanten können im Gegensatz zu Variablen nachträglich keine neuen Werte aufnehmen sondern behalten immer ihren Ursprungswert. Um eine Konstante zu erzeugen notiert man statt dem dim-Befehl das Wort const gefolgt vom Konstantennamen, dem Ist-Gleich-Zeichen und dem Konstantenwert. Beispiel:

Const Pi = 3.41