VBScript: Variablen und Konstanten
Variablen übernehmen in VBScript , ebenso wie in allen anderen Programmiersprachen, die Aufgabe bestimmte, meist errechnete, Werte zwischen zu speichern. Variablen automatisieren daher den Zugriff auf den Arbeitsspeicher, da nicht manuell auf eine Speicheradresse zugegriffen werden muss, sondern lediglich auf die Variable - den Rest erledigt der Interpreter von allein.Mit Variablen arbeiten
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 BezeichnungMeineVariable
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 Wortdim
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
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 Wortpublic
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 Wortprivate
anstelle von dim
verwendet. Prinzipiell unterscheiden sich dim
und private
jedoch nicht. Beispiel:
private MeineVariable
Bitte beachten Sie, dass derartige Deklarationen im Gegensatz zudim
jedoch nur auf Modulebene stehen dürfen. Sollten Sie eine öffentliche Variable innerhalb einer Prozedur erzeugen wollen, wird ein Fehler ausgegeben.
Variablentypen
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:
Variablentyp | Typenkonstante | Umwandlung mit | Typenwert | Beschreibung |
---|---|---|---|---|
Empty | vbEmpty | - | 0 | Entspricht einer nicht initialisierten Variablen (kein Wert) |
Null | vbNull | - | 1 | Entspricht einer Variablen mit ungültigen Daten |
Integer | vbInteger | CInt | 2 | Entspricht einer Ganzzahl im Bereich von -32768 bis 32767 |
Long Integer | vbLong | CLng | 3 | Entspricht einer Ganzzahl im Bereich von -2147483648 bis 2147483647 |
Single | vbSingle | CSng | 4 | Entspricht 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 |
Double | vbDouble | CDbl | 5 | Entspricht 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 |
Currency | vbCurrency | CCur | 6 | Entspricht einer Währungsanzeige von -922337203685477,5808 bis 922337203685477,5807 |
Date (Time) | vbDate | CDate | 7 | Entspricht einem Datum angefangen vom 01.01.100 bis zum 31.12.9999 |
String | vbString | CStr | 8 | Entspricht einer Zeichenfolge (Text) mit bis zu 2 Milliarden Zeichen |
Object | vbObject | - | 9 | Entspricht einem Objekt |
Error | vbError | - | 10 | Entspricht einem Fehler |
Boolean | vbBoolean | CBool | 11 | Entspricht einem Boolean (Wahrheitswert) und kann die Werte true oder false bzw. 0 oder 1 annehmen. |
Variant | vbVariant | - | 12 | Entspricht einem Variant (wird nur bei Arrays mit Variant-Werten eingesetzt) |
DataObject | vbDataObject | - | 13 | Entspricht einem Datenzugriffsobjekt |
Byte | vbByte | CByte | 17 | Entspricht einem Byte (Ganzzahl) im Bereich von 0 bis 255 |
Array | vbArray | - | 8192 | Entspricht einem Array (Liste) |
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
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.
Konstanten
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 demdim
-Befehl das Wort const
gefolgt vom Konstantennamen, dem Ist-Gleich-Zeichen und dem Konstantenwert. Beispiel:
Const Pi = 3.14159265359
Du arbeitest in einer Agentur oder als Freelancer?
Dann wirf doch mal einen Blick auf unsere Software FeatValue.
Weiterlesen: ⯈ Klassen und Objekte
Über uns
Wir entwickeln Webanwendungen mit viel Leidenschaft. Unser Wissen geben wir dabei gerne weiter. Mehr über a coding project