Excel VBA String zu Integer
String und Integer sind gängige Datentypen. Im Rahmen unserer Datenanalyse möchten wir jedoch häufig eine String-Datentypvariable in einen Integer-Datentyp konvertieren. Dies ist mithilfe der Funktion „CINT“ in VBA möglich.

Syntax der CINT-Funktion
"CINT" wird als Datentypkonvertierungsfunktion kategorisiert. Diese Funktion konvertiert den bereitgestellten Ausdruck in einen Integer-Datentyp. Wenn ich "Ausdruck" sage, muss es sich um einen numerischen Wert handeln, der im Bereich des Integer-Datentyps in VBA liegt, dh zwischen -32768 und 32767.
Schauen Sie sich nun die Syntax der CINT-Funktion in VBA an.

- Ausdruck ist der Wert oder die Variable, die den Wert enthält, der in den Integer-Datentyp konvertiert werden soll.
In diesem Artikel zeigen wir Ihnen die Konvertierung des Integer-Datentyps von einer Zeichenfolge in eine Ganzzahl mithilfe der Funktion „CINT“.
Beispiele für die CINT-Funktion in VBA
Beispiel 1
Lassen Sie uns das erste Beispiel für die Konvertierung einer Bruchzahl in einen ganzzahligen Datentyp durchführen.
Code:
Sub CINT_Example1 () Dim IntegerNumber As String Dim IntegerResult As Integer IntegerNumber = 2564.589 IntegerResult = CInt (IntegerNumber) MsgBox IntegerResult End Sub
- Im obigen Code für die Variable "IntegerNumber" habe ich den Wert "2564.589" zugewiesen.
- In der nächsten Zeile habe ich eine CINT-Funktion angewendet. Der angegebene Wert wird also in die nächste Ganzzahl umgewandelt.

Wir haben also das Ergebnis - 2565, und die angegebene Nummer ist 2564.589. Wenn der Dezimalwert mehr als 0,5 beträgt, runden CINT-Funktionen die Zahl auf die nächste Ganzzahl auf. Wenn der Dezimalwert kleiner oder gleich 0,5 ist, runden CINT-Funktionen auf dieselbe Ganzzahl ab.
Ein Beispiel finden Sie im folgenden Code, bei dem die Zahl kleiner als 0,5 ist
Code:
Sub CINT_Example1 () Dim IntegerNumber As String Dim IntegerResult As Integer IntegerNumber = 2564 - 0.5 IntegerResult = CInt (IntegerNumber) MsgBox IntegerResult End Sub
Dies sollte das Ergebnis als 2564 und nicht als 2565 ergeben.

Beispiel 2
Jetzt werde ich versuchen, die Nummer zuzuweisen, die über dem Limit des Integer-Datentyps liegt.
Code:
Sub CINT_Example2 () Dim IntegerNumber As String Dim IntegerResult As Integer IntegerNumber = 51456.785 IntegerResult = CInt (IntegerNumber) MsgBox IntegerResult End Sub
Ich habe die Nummer als "IntegerNumber = 51456.785" zugewiesen, was mehr als das Limit des Integer-Datentyplimits ist. Wenn ich nun versuche, den Code auszuführen, wird in VBA ein Überlauffehler ausgegeben.

Wenn die angegebene Zahl größer als der Datentyp Integer ist, wird das einfache Meldungsfeld mit der Aufschrift "Number is More than the Limit des Integer-Datentyps" angezeigt.
Code:
Sub CINT_Example2 () Dim IntegerNumber As String Dim IntegerResult As Integer IntegerNumber = 51456.785 Bei Fehler GoTo-Nachricht: IntegerResult = CInt (IntegerNumber) Nachricht: Wenn Err.Number = 6, dann ist MsgBox IntegerNumber & "größer als die Grenze des Integer-Datentyps" End Sub
Dies zeigt die folgende Meldung an, wenn die angegebene Nummer außerhalb des Bereichs des Integer-Datentyps liegt.

Beispiel 3
Jetzt werde ich versuchen, den Wert zuzuweisen, der nicht numerisch ist.
Sub CINT_Example2 () Dim IntegerNumber As String Dim IntegerResult As Integer IntegerNumber = "Hallo" IntegerResult = CInt (IntegerNumber) MsgBox IntegerResult End Sub
Ich habe den Wert als "Hallo" zugewiesen, der nicht numerisch ist. Dies führt zu "Type Mismatch Error".

Anstatt den Fehler wie folgt anzuzeigen, stellen wir dem Benutzer ein einfaches Informationsmeldungsfeld vor. Mit dem folgenden Code wird das Meldungsfeld "Der Wert für den bereitgestellten Ausdruck ist nicht numerisch und kann daher nicht konvertiert werden" angezeigt.
Code:
Sub CINT_Example2 () Dim IntegerNumber As String Dim IntegerResult As Integer IntegerNumber = "Hallo" bei Fehler GoTo-Nachricht: IntegerResult = CInt (IntegerNumber) Nachricht: Wenn Err.Number = 13 Dann MsgBox IntegerNumber & ": Der bereitgestellte Ausdruckswert ist nicht numerisch , Kann also nicht konvertiert werden "End Sub
Daraufhin wird das folgende Meldungsfeld angezeigt.

Dinge, an die man sich erinnern sollte
- CINT konvertiert Werte von einem anderen Datentyp in einen ganzzahligen Datentyp.
- Die Ganzzahl kann Werte von -32768 bis 32767 enthalten. Alles, was über diesen Zahlen liegt, führt zu einem Überlauffehler.
- Nur der Zeichenfolgendatentyp enthält numerische Daten, die in einen ganzzahligen Datentyp konvertiert werden.
Empfohlene Artikel
Dies war eine Anleitung zu VBA String to Integer. Hier werden Beispiele für Zeichenfolgen in Ganzzahlen in Excel VBA mithilfe der CINT-Funktion sowie praktische Beispiele und herunterladbare Excel-Vorlagen erläutert. Im Folgenden finden Sie einige nützliche Artikel zu VBA -
- VBA String in Array aufteilen
- Bisherige VBA-Zeichenfolge
- VBA-String-Vergleich
- VBA-Zeichenfolge ersetzen