VBA Int / Integer-Datentyp (Dim-Variable)

Integer (Int) Variablentyp

Die VBA Int Datentyp wird verwendet, um ganze Zahlen (keine Dezimalwerte) zu speichern. Wie wir jedoch weiter unten sehen werden, müssen die Integer-Werte im Bereich von -32768 bis 32768 liegen.

Um eine Int-Variable zu deklarieren, verwenden Sie die Dim-Anweisung (kurz für Dimension):

1 Dim intA als Integer

Um dann einer Variablen einen Wert zuzuweisen, verwenden Sie einfach das Gleichheitszeichen:

1 intA = 30000

Das Einfügen in eine Prozedur sieht so aus:

12345678 Sub IntExample()'die ganze Zahl deklarierenDim intA als Integer'die ganze Zahl auffüllenintA = 30000'zeige die NachrichtenboxMsgBox intAEnd Sub

Wenn Sie den obigen Code ausführen, wird das folgende Meldungsfeld angezeigt.

Langer Variablentyp

Wie oben erwähnt, können Int-Variablen nur Werte zwischen -32768 und 32768 speichern. Wenn Sie versuchen, einer Int-Variablen einen Wert außerhalb dieses Bereichs zuzuweisen, erhalten Sie eine Fehlermeldung:

Wenn Sie auf Debug klicken, wird der Code an der 'fülle die Integer-Zeile als Ganzzahl kann keine Zahl bis zu 50000 speichern.

Stattdessen können Sie eine Variable mit dem deklarieren Lang Datentyp:

1 Dim longA wie Long

Lange Variablen können sehr lange Datentypen speichern (-2.147.483.648 bis 2.147.483.648).

<>

Warum würden Sie Int-Variablen anstelle von Long-Variablen verwenden?

Lange Variablen verwenden mehr Speicher. Vor Jahren war der Speicher beim Schreiben von Code ein großes Problem, aber jetzt ist die Computertechnologie stark verbessert und es ist zweifelhaft, dass Sie beim Schreiben von VBA-Code auf Speicherprobleme stoßen, die durch lange Variablen verursacht werden.

Wir empfehlen, immer Long-Variablen anstelle von Int-Variablen zu verwenden. Wir werden dieses Tutorial mit den Int-Variablen fortsetzen, aber denken Sie daran, dass Sie stattdessen den Variablentyp Long verwenden können.

Dezimalwerte und Int-Datentypen

Int-Variablen können keine Dezimalwerte speichern. Wenn Sie einer Dezimalzahl eine ganze Zahl übergeben, wird die Dezimalzahl gerundet, um die Dezimalzahl zu entfernen.

Wenn Sie daher das folgende Verfahren ausführen:

12345678 Sub IntExampleB()'die ganze Zahl deklarierenDim intA als Integer'die ganze Zahl auffüllenintA = 3524,12'zeige die NachrichtenboxMsgBox intAEnd Sub

Sie erhalten folgendes Ergebnis (abrunden):

Aber dieser Code unten:

12345678 Sub IntExampleB()'deklariere die ganze ZahlDim intA als Integer'die ganze Zahl auffüllenintA = 3524,52'zeige die NachrichtenboxMsgBox intAEnd Sub

Würde das folgende Meldungsfeld zurückgeben (aufrunden):

Dezimal / Doppelter Datentyp

Wenn Sie eine Dezimalstelle speichern möchten, müssen Sie eine Variable deklarieren, die Dezimalstellen zulässt. Es gibt 3 Datentypen, die Sie verwenden können - Single, Double oder Currency.

1 Dim sngPreis als Single
1 Dim dblPreis als Double
1 Dim curPreis als Währung

Der Datentyp Single rundet den Dezimalpunkt etwas anders als der Datentyp Double und Currency, daher ist es aus Gründen der Genauigkeit vorzuziehen, Double zu Single zu verwenden. Ein Double kann bis zu 12 Dezimalstellen haben, während Währung und Single bis zu 4 Dezimalstellen haben können.

Weitere Informationen zu diesen Datentypen finden Sie hier.

Int-Variable auf Modul- oder globaler Ebene deklarieren

In den vorherigen Beispielen haben wir die Variable Int innerhalb einer Prozedur deklariert. Mit einer Prozedur deklarierte Variablen können nur innerhalb dieser Prozedur verwendet werden.

Stattdessen können Sie Int-Variablen auf Modul- oder globaler Ebene deklarieren.

Modulebene

Modulebene Variablen werden am Anfang von Codemodulen mit dem deklariert Dim Stellungnahme.

Diese Variablen können mit jeder Prozedur in diesem Codemodul verwendet werden.

Globale Ebene

Globale Ebene Variablen werden auch am Anfang von Codemodulen deklariert. Anstatt jedoch die Dim Anweisung, verwenden Sie die Öffentlich -Anweisung, um anzugeben, dass die Integer-Variable für die Verwendung in Ihrem gesamten VBA-Projekt verfügbar ist.

1 Öffentliche IntA als Integer

Wenn Sie die Ganzzahl auf Modulebene deklarieren und dann versuchen, sie in einem anderen Modul zu verwenden, würde ein Fehler auftreten.

Wenn Sie jedoch das Schlüsselwort Public verwendet hätten, um die Ganzzahl zu deklarieren, würde der Fehler nicht auftreten und die Prozedur würde perfekt ausgeführt.

String in Int umwandeln

Es kann eine Instanz oder Instanzen geben, in denen Sie eine als String gespeicherte Zahl in einen ganzzahligen Wert konvertieren müssen.

Sie werden im unmittelbaren Fenster bemerken, dass der Integer-Wert nach rechts geht und eine Zahl anzeigt, während der String-Wert nach links geht und Text anzeigt.

Int in String umwandeln

Umgekehrt können Sie einen ganzzahligen Wert in eine Zeichenfolge umwandeln.

Weitere Informationen zu diesen Datentypen finden Sie hier.

Als String gespeicherte Ganzzahl formatieren

<>

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave