Rückkehr in VBA-Code-Beispiele

VBA – Zeichenkette in Zahl umwandeln

Es kann vorkommen, dass Sie in Ihrem VBA-Code als Text gespeicherte Zahlen in tatsächliche Zahlen umwandeln müssen. In diesem Tutorial gehen wir auf die Funktionen ein, die Sie verwenden müssen, um eine Zeichenkette in einen Integer-, Long-, Double-, Dezimal- oder Währungsdatentyp umzuwandeln (Klicken Sie hier, um mehr über die Umwandlung von Zahlen in Zeichenketten zu erfahren)

String in Integer umwandeln

Sie können die Funktionen CInt oder CLng verwenden, um eine Zeichenkette in eine ganze Zahl zu konvertieren. Wenn der Bruch kleiner als 0,5 ist, rundet die Funktion ab. Wenn der Bruch größer oder gleich 0,5 ist, rundet die Funktion auf. Der folgende Code wandelt eine Zeichenkette in eine ganze Zahl um:

MsgBox CInt("7.55")

Das Ergebnis ist:

verwendung cint funktion vba

Der folgende Code verwendet die Funktion CLng, um eine Zeichenkette in eine ganze Zahl umzuwandeln:

MsgBox CLng("13.5")

Das Ergebnis ist:

verwendung clng funktion vba

Hinweis: Sie können die Funktionen CInt oder CLng verwenden, um eine Zeichenkette in einen Integer- bzw. Long-Datentyp umzuwandeln. Der Long-Datentyp ist derselbe wie ein Integer-Datentyp, außer dass größere Zahlen dabei zulässig sind. In der Vergangenheit war diese Unterscheidung aufgrund von Speicherbeschränkungen erforderlich. In der modernen Programmierung gibt es keinen Grund, den Long-Datentyp nicht zu verwenden, da der Speicherplatz keine Rolle mehr spielt. Es ist also immer besser, einen Long-Datentyp anstelle eines Integer-Datentyps zu verwenden.

Sie können das Direktfenster verwenden, um zu sehen, wie der Wert verarbeitet werden würde, wenn er nicht in eine Ganzzahl umgewandelt worden wäre:

Debug.Print "13.5" + "13.5"

verwendung von direktfenster Normalerweise wird der Text als Variable gespeichert und diese Variable muss in einen Zahlendatentyp, wie im folgenden Code gezeigt, umgewandelt werden:

Sub Verwendung_Variablen()

Dim wertEins As String
wertEins = 5
MsgBox CLng(wertEins) + CLng(wertEins)

End Sub

String in Dezimalzahlen umwandeln

Sie können die Funktion CDbl oder CDec verwenden, um eine Zeichenkette in eine Dezimalzahl umzuwandeln. Der folgende Code würde eine Zeichenkette in einen Double-Datentyp umwandeln:

MsgBox CDbl("9.1819")

Das Ergebnis ist:

umwandlung string double dezimaltyp

Der folgende Code würde eine Zeichenkette in einen dezimalen Datentyp umwandeln:

MsgBox CDec("13.57") + CDec("13.4")

Das Ergebnis ist:

umwandlung string dezimaltyp vba

Sie können das Direktfenster verwenden, um zu sehen, wie der Wert verarbeitet werden würde, wenn er nicht in einen Double- oder Dezimaldatentyp umgewandelt worden wäre:

Debug.Print "13.57" + "13.4"

Das Ergebnis ist: verwendung debugprint werte anzeigen Hinweis: Der Datentyp „Dezimal“ kann größere Zahlen speichern als der Datentyp „Double“. Daher ist es immer ratsam, den Datentyp „Dezimal“ zu verwenden, wenn Sie unsicher sind.

String in Währung umwandeln

Sie können die Funktion CCur verwenden, um eine Zeichenkette in eine Währung umzuwandeln. Der folgende Code würde eine Zeichenkette in einen Währungsdatentyp umwandeln:

Range("A1").Value = CCur("18.5")

Das Ergebnis ist:

umwandlung-string-waehrung-datentyp

VBA Coding Made Easy

Stop searching for VBA code online. Learn more about AutoMacro - A VBA Code Builder that allows beginners to code procedures from scratch with minimal coding knowledge and with many time-saving features for all users! vba save as


Learn More!