Die Addition in VBA (Die Addition in VBA), Lektion, Seite 722884
https://www.purl.org/stefan_ram/pub/addition_vba (Permalink) ist die kanonische URI dieser Seite.
Stefan Ram
VBA-Kurs

Die Addition »…+…« in VBA 

Direktbereich

? 1 + 1

2

? 1. + 1

2

? "1" + 1

2

? "1" + "1"

11

? "a" + "1"

a1

? "a" + 1

⚠ Laufzeitfehler '13': Typen unverträglich
⚠ Run-time Error '13': Type mismatch

Vereinfachte Syntax

vereinfachte Syntax
Ausdruck
.----------. .-. .----------.
--->| Ausdruck |--->· + ·-->| Ausdruck |--->
'----------' '-' '----------'

Die Addition wird mit dem Pluszeichen »+« geschrieben. Sind A  und a  zwei Ausdrücke, so ist A +a  wieder ein Ausdruck, die Summe  von A  und a. Dabei wird A  auch Augend  und a  Addend  genannt. (Diese vereinfachte Syntax bringt die Priorität und Assoziativität der Addition nicht richtig zum Ausdruck. Diese beiden werden daher weiter unten separat erklärt.)

Typanforderungen

Der Augend und der Addend kann jeden der bisher vorgestellten Typen haben.

Typ

Falls beide Operanden den Typ »Integer« haben, hat die Summe auch den Typ »Integer«. Andernfalls gilt: falls ein Operanden einen numerischen Typ hat und der andere numerisch ist, hat die Summe den Typ »Double«. Andernfalls gilt: falls beide Operanden den Typ »String« haben, hat die Summe auch den Typ »String«.

Wert

Bei der Auswertung einer Addition werden beide Operanden ausgewertet. Haben beide Operanden den Typ »String«, so ist das Ergebnis die Hintereinanderschreibung (Verkettung) der beiden Zeichenfolgen in der gegebenen Reihenfolge. Sind die beide Operanden numerisch, so ist das Ergebnis im allgemeinen ihre Summe.

Linksassoziativität

Ohne Klammerung wird bei mehr als einer Addition zuerst die am weitesten links  stehende Summe ausgewertet.

Direktbereich

? "1"+"1"+1

12

? 1+"1"+"1"

3

Das folgende Beispiel zeigt, daß die Addition des leeren Strings »""« einen Text nicht verändert.

Direktbereich

? "+"+""+"+"

++

Priorität

Die Priorität  der Addition ist kleiner als die der Division. Das heißt, daß ein Operandenausdruck, der direkt zwischen einem »+« und einem »/« steht, zu dem »/« gezählt wird.

In der folgenden Darstellung der bei der Auswertung eines Ausdrucks erfolgenden Operationen, gehört zu jeder Operation ein nach rechts weisender Pfeil. Der von der Operation ausgewertete Teilausdruck ist durch einen waagerechten Strich über ihm gekennzeichnet.

Operationen bei der Auswertung von »2 + 4/2«

___
2 + 4/2 →
2 + 2

_____
2 + 2 →
4

Direktbereich

? 2 + 4/2

4

Um eine spezielle gewünschte Zusammenfassung  zu erreichen, können Ausdruckklammern verwendet werden.

Operationen bei einer Auswertung mit Ausdruckklammern:

Operationen bei der Auswertung von »( 2 + 4 )/2«

_________
( 2 + 4 )/2 →
6 /2

___
6/2 →
3

Direktbereich

? ( 2 + 4 )/2

3

Vorzeichen  haben eine höhere Priorität als die Addition:

Direktbereich

? -3+9

6

? -(3+9)

-12

Verkettung

Der Operator »&« dient zur Verkettung von Zeichenfolgen. Er ähnelt »+« insofern als er manchmal das gleiche Ergebnis hat.

Direktbereich

? "a"+"b"

ab

? "a"&"b"

ab

Falls der Operator »&« auf eine Zahl angewendet wird, so wird diese in eine Zeichenfolge gewandelt.

Direktbereich
? 2 & 3
23
? "a" & 2
a2
? 2 & "a"
2a

Falls der Operator »&« direkt vor oder direkt hinter einem Numerale steht, so ist er von diesem durch Leerraum  zu trennen, da es andernfalls möglich ist, daß er als Teil des Numerales angesehen wird. Dies kann dann zu einer anderen Interpretation des Ausdrucks führen.

Die Priorität der Verkettung ist niedriger  als die der Addition.

? 4 & 3 + 2

45

Priorität

Priorität und Assoziativität der bisher behandelten Operatoren
()                   Eingeklammerter Ausdruck
+ - Unaere vorangestellte Operatoren
/ Division
+ Addition
& Verkettung

Übungsfragen

?   Ausdrücke

Welcher der folgenden Ausdrücke hat denselben Wert wie »1 / 2+3«?

»1/( 2+3 )«   Anton
»( 1/2 )+ 3«  Berta

?   Ausdrücke

Welche Ausgabe erzeugt die folgende Eingabe?

? 1/2  + 1/2

Welche Ausgabe erzeugt die folgende Eingabe?

? 1 +( "1" + "1" )

Übungsaufgaben

/   Terme

Die in der Mathematik vorkommenden Schreibweisen für Werte werden Terme genannt. In VBA  verwendet man keine Terme. Die Ausdrücke von VBA  haben aber Ähnlichkeit mit Termen. Viele Terme lassen sich auch als Ausdruck schreiben und umgekehrt.

Schreiben Sie möglichst kurze Ausdrücke für die folgenden Terme, ohne vorher irgendwelche Teile der Terme im Kopf auszurechnen. Die Werte der Ausdrücke sollten den mathematischen Werten der vorgegebenen Terme möglichst nahe kommen, also den Werten, die man in der Grundschule als Werte der Terme ansehen würde.

Term (Ein Halb plus drei Viertel, erwartete Ausgabe: »1.25«)
 1       3
--- + ---
2 4
Term (Drei plus Vier im Zähler und Fünf plus Sechs im Nenner, erwartete Ausgabe: »0.6363636363636364«)
  3 + 4
---------
5 + 6

/   Beschriftung einer Ausgabe

Berechnen Sie mit VBA  die Summe 2+3 (diese soll nicht im Kopf ausgerechnet werden) und geben Sie das Ergebnis dann mit dem Text »2 + 3 = « (acht Zeichen) davor und dem Text ».« (ein Zeichen) dahinter aus.

Seiteninformationen und Impressum   |   Mitteilungsformular  |   "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram.   |   Eine Verbindung zur Stefan-Ram-Startseite befindet sich oben auf dieser Seite hinter dem Text "Stefan Ram".)  |   Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram. Schlüsselwörter zu dieser Seite/relevant keywords describing this page: Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram722884 stefan_ram:722884 Die Addition in VBA Stefan Ram, Berlin, and, or, near, uni, online, slrprd, slrprdqxx, slrprddoc, slrprd722884, slrprddef722884, PbclevtugFgrsnaEnz Erklärung, Beschreibung, Info, Information, Hinweis,

Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten. Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/addition_vba