Die Ausdruckklammern »( … )« in VBA
Das Zeichen »(« wird „runde Klammer auf“ genannt.
Das Zeichen »)« wird „runde Klammer zu“ genannt.
- Syntax
Ausdruck
.-. .----------. .-.
--->· ( ·--->| Ausdruck |--->· ) ·-->
'-' '----------' '-'
Syntax Wird ein Ausdruck in runde Klammern eingeschlossen, so gilt dies wieder als ein Ausdruck. Während »-« ein Präfixoperator ist, ist »( … )« ein Zirkumfixoperator : Das heißt, »-« steht vor seinem Operandenausdruck, aber »(…)« umgibt seinen Operandenausdruck.
Typanforderungen Ein Ausdruck eines beliebigen Typs darf eingeklammert werden.
Typergebnis Der Typ des gesamten Ausdrucks ist der Typ des eingeklammerten Ausdrucks.
Die folgenden Typregeln bringen dies symbolisch zum Ausdruck. Sie sind nicht als VBA -Quelltext zu verstehen.
- Typregel für Ausdruckklammern
- ( Integer )= Integer
( Double )= Double
( String )= String
Wert Bei der Auswertung der Ausdruckklammern wird der eingeklammerte Ausdruck ausgewertet. Der Wert des Ausdrucks mit den Klammern ist derselbe Wert, wie der Wert des Ausdrucks in den Klammern. (Das Einklammern ändert den Wert nicht.)
- Direktbereich
? ( 65 )
65- Direktbereich
? ( "abc" )
abc
Syntaktische Rekursion
Da ein eingeklammerter Ausdruck wieder ein Ausdruck ist, kann dieser selber auch wieder eingeklammert werden.
- Direktbereich
? (( 65 ))
65
Kombinationen verschiedener Operatoren
Wenn die in diesem Lehrgang oft einzeln vorgestellten Sprachelemente angewendet werden, werden sie oft miteinander kombiniert. In diesem Lehrgang können nicht alle möglichen Kombinationen vorgestellt werden. Der Leser muß später also selber an die Möglichkeit denken, neue Kombinationen bilden zu können.
Beispielhaft werden hier einige mögliche Kombinationen gezeigt:
Der Klammeroperator kann einen beliebigen Ausdruck einklammern. Dies kann auch ein Ausdruck sein, der mit einem Minusoperator gebildet wurde.
- Direktbereich
? ( -65 )
-65- syntaktische Kombination
Ausdruck
.----------------------------.
| Ausdruck |
.-. | .-. .----------. | .-.
--->· ( ·-->|--->· - ·-->| Ausdruck |--->|--->· ) ·--->
'-' | '-' '----------' | '-'
| |
'----------------------------'
Der Minusoperator kann vor einem beliebigen numerischen Ausdruck stehen. Dies kann auch ein numerischer Ausdruck sein, der mit einem Klammeroperator gebildet wurde.
- Direktbereich
? -( 65 )
-65- syntaktische Kombination
Ausdruck
.-------------------------------------.
| Ausdruck |
.-. | .-. .----------. .-. |
--->· - ·-->|--->· ( ·-->| Ausdruck |--->· ) ·--->|--->
'-' | '-' '----------' '-' |
| |
'-------------------------------------'
Das folgende Beispiel zeigt eine weitere mögliche Kombination.
- Direktbereich
? ( -( -65 ))
65
Substitutionsprinzip
An den Stellen, wo ein Literal eines Typs zulässig ist, ist auch ein eingeklammerter Operatorausdruck mit demselben Typ zulässig.
Beispielsweise ist an den Stellen, wo das Literal »65« zulässig ist, auch der Operatorausdruck »( -65 )« zulässig.
(In bestimmten Fällen können die Klammern auch entfallen.)
Übungsfragen
[?] Übungsfrage
Welcher der folgenden Texte ist nach dem oben Gesagten ein Ausdruck?
- A »(-)«
- B »(2)«
- C »()«
- D »(Integer)«
- E »(2«
- F »(2)2«