Een tekenreeks naar een geheel getal converteren in vba (met voorbeelden)
U kunt de CInt- functie in VBA gebruiken om een tekstreeks naar een geheel getal te converteren.
Hier zijn twee veelvoorkomende manieren om deze functie in de praktijk te gebruiken:
Methode 1: Tekenreeks naar geheel getal converteren in VBA
Sub ConvertStringToInteger() Dim i As Integer For i = 2 To 11 Range(" B " & i) = CInt(Range(" A " & i)) Next i End Sub
Deze specifieke macro converteert elke tekenreeks in het bereik A2:A11 naar een geheel getal en geeft de gehele getallen in het bereik B2:B11 weer.
Methode 2: String naar geheel getal converteren in VBA (alleen als String een getal is)
Sub ConvertStringToInteger()
Dim i As Integer
For i = 2 To 11
If IsNumeric(Range(" A " & i)) Then
Range(" B " & i) = CInt(Range(" A " & i))
Else
Range(" B " & i) = 0
End If
Next i
End Sub
Deze specifieke macro converteert elke tekenreeks in het bereik A2:A11 alleen naar een geheel getal als de tekenreeks een getal is. Anders wordt de tekenreeks geconverteerd naar een nulwaarde.
De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken.
Voorbeeld 1: Tekenreeks naar geheel getal converteren in VBA
Laten we zeggen dat we de volgende kolom met waarden in Excel hebben, momenteel opgemaakt als tekstreeksen:
Stel dat we elke tekenreeks naar een geheel getal willen converteren en de gehele getallen in kolom B willen weergeven.
We kunnen hiervoor de volgende macro maken:
Sub ConvertStringToInteger() Dim i As Integer For i = 2 To 11 Range(" B " & i) = CInt(Range(" A " & i)) Next i End Sub
Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:
Houd er rekening mee dat elke tekstreeks in kolom A is geconverteerd naar een geheel getal en wordt weergegeven in kolom B.
Voorbeeld 2: converteer een tekenreeks naar een geheel getal in VBA (alleen als de tekenreeks een getal is)
Laten we zeggen dat we de volgende kolom met waarden in Excel hebben, momenteel opgemaakt als tekstreeksen:
Stel dat we elke string alleen naar een geheel getal willen converteren als de string een getal is en de gehele getallen in kolom B weergeven.
We kunnen hiervoor de volgende macro maken:
Sub ConvertStringToInteger()
Dim i As Integer
For i = 2 To 11
If IsNumeric(Range(" A " & i)) Then
Range(" B " & i) = CInt(Range(" A " & i))
Else
Range(" B " & i) = 0
End If
Next i
End Sub
Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:
Houd er rekening mee dat alleen tekstreeksen in kolom A die getallen zijn, worden geconverteerd naar gehele getallen in kolom B.
Anders worden tekstreeksen eenvoudigweg geconverteerd naar een nulwaarde.
Opmerking : u kunt hier de volledige documentatie voor de VBA Cint- functie vinden.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in VBA kunt uitvoeren:
VBA: spaties uit een string verwijderen
VBA: het aantal tekens in een string tellen
VBA: hoe controleer je of een string een andere string bevat?