Mathematische Funktionen

Abs

Abs(Number As Variant) As Variant

Gibt Number absolut zurück. Negative Zahlen werden also mit „-1“ multipliziert, andere Zahlen bleiben unverändert.

Debug.Print Abs(-2)
 2

Atn

Atn(Number As Double) As Double

Berechnet den Arkustangens im Bogenmaß. Das Ergebnis liegt zwischen /2 und Π/2.

Cos

Cos(Number As Double) As Double

Berechnet den Cosinus im Bogenmaß. Das Ergebnis liegt zwischen -1 und 1.

Exp

Exp(Number As Double) As Double

Potenziert Number mit dem natürlichen Logarithmus e. (eNumber)

Debug.Print Exp(1)
 2,71828182845905

Fix

siehe auch
Fix(Number As Variant) As Variant

Schneidet Nachkommastellen von Number ab und gibt es als Ganzzahl aus.

Ist Number negativ, ist das Ergebnis somit um 1 größer als bei der Int-Funktion.

Debug.Print Fix(8.1)
 8
Debug.Print Fix(-8.1)
-8

Hex

siehe auch
Hex(Number As Variant) As String

Gibt eine Zahl in hexadezimaler Schreibweise, mit bis zu 8 Stellen, zurück.

Debug.Print Hex(255)
FF

Zahlen können jederzeit auch Hexadezimal geschrieben werden, wenn man „&h“ davor setzt, z. B. &hFF. Es steht der Integer-Wertebereich (-32.768 = &h8000 bis 32.767 = &h7FFF) zur Verfügung (Hier erkennt man, dass das vorderste Bit zur Vorzeichenerkennung dient).

Int

siehe auch
Int(Number As Variant) As Variant

Falls Number Nachkommastellen hat, wird die nächstkleinere Ganzzahl ausgegeben.

Ist Number negativ, ist das Ergebnis somit um 1 kleiner als bei der Fix-Funktion.

Debug.Print Int(8.1)
 8
Debug.Print Int(-8.1)
-9

Log

Log(Number As Double) As Double

Potenziert den natürlichen Logarithmus e mit Number. (Numbere)

Debug.Print Log(2.71828182845905)
 1

Oct

siehe auch
Oct(Number As Variant) As String

Gibt eine Zahl in oktaler Schreibweise, mit bis zu 11 Stellen, zurück.

Debug.Print Oct(8)
10

Zahlen können jederzeit auch Oktal geschrieben werden, wenn man „&o“ davor setzt, z. B. &o10. Es steht der Integer-Wertebereich (-32.768 = &o100000 bis 32.767 = &o77777) zur Verfügung (Hier erkennt man, dass das vorderste Bit zur Vorzeichenerkennung dient).

QBColor

siehe auch
QBColor(Color As Integer) As Long

Früher kannten Computer nur 16 Farben. QBColor errechnet für jede dieser Farben den entsprechenden RGB-Farbwert. Für Color sind daher auch nur die Werte 0 bis 15 zulässig. Für einige davon sind Konstanten definiert.

RGB

siehe auch
RGB(Red As Integer, Green As Integer, Blue As Integer) As Long

Farben werden üblicherweise als Zahlen dargestellt, die sich aus dem jeweiligen Rot-, Grün- und Blauanteil der Farbe berechnen. Jeder dieser Anteile kann zwischen 0 und 255 liegen, womit also über 16 Millionen Farben möglich sind. Die RGB-Funktion berechnet aus den Rot-, Grün- und Blauwerten wie folgt eine Zahl, welche die Farbe repräsentiert:
Red + (Green * 256) + (Blue * 256 * 256)
Vergleicht man VBA mit anderen Systemen, sind also Rot und Blau in VBA vertauscht.

Häufig werden Farbangaben hexadezimal dargestellt. Dazu kann man RGB mit der Hex-Funktion kombinieren. Für einige Grundfarben sind Konstanten definiert, so dass man nicht mehr erst rechnen muss. Für Systemfarben, die von den Systemeinstellungen des Computers abhängen, gibt es eigene Konstanten.

Rnd

 Rnd([Number As Single]) As Single

Gibt eine Zufallszahl zwischen „0“ und „1“ zurück.

Debug.Print Rnd
 0,4803802

Da ein Computer nicht wirklich zufällig Zahlen erzeugen kann, berechnet er sie anhand des Startwertes Number. Um einen wirklich zufälligen Startwert zu bekommen, empfiehlt es sich, vor der ersten Verwendung von Rnd die Randomize-Anweisung zu verwenden. Bei jedem weiteren Aufruf von Rnd wird dann die zuletzt erzeugte Zufallszahl als Startwert gesetzt, was zu wirklich zufälligen Werten führt.

Randomize
Debug.Print Rnd
 0,3335251

Mit Rnd(0)kann die zuletzt zufällig erzeugte Zahl erneut abgerufen werden. Verwendet man für Number negative Zahlen, erhält man für jeweils die gleiche Number immer dieselbe Zahl.

Round

Round(Number As Variant, [NumDigitsAfterDecimal As Long])

Die Funktion soll Number runden, rundet aber bei „0,5“ noch ab, erst bei „0,51“ auf.

Sgn

 Sgn(Number As Variant) As Variant

Ist Number negativ, wird „-1“ zurückgegeben, ist Number gleich „0“, wird „0“ zurückgegeben, ist Number positiv, wird „1“ zurückgegeben.

Sin

Sin(Number As Double) As Double

Berechnet den Sinus im Bogenmaß. Das Ergebnis liegt zwischen -1 und 1.

Sqr

Sqr(Number As Double) As Double

Gibt die Quadratwurzel von Number zurück.

Debug.Print Sqr(16)
 4

Tan

Tan(Number As Double) As Double

Berechnet den Tangens im Bogenmaß. Das Ergebnis liegt zwischen -1 und 1.