Een string naar lang converteren in vba (met voorbeelden)


U kunt de CLng- functie in VBA gebruiken om een tekstreeks naar een lang gegevenstype te converteren.

Hier zijn twee veelvoorkomende manieren om deze functie in de praktijk te gebruiken:

Methode 1: String converteren naar lang in VBA

 Sub ConvertStringToLong ()

    Dim i As Integer

    For i = 2 To 11
        Range(" B " & i) = CLng(Range(" A " & i))
    Next i

End Sub

Deze specifieke macro converteert elke tekenreeks in het bereik A2:A11 naar een lang gegevenstype en geeft lange waarden weer in het bereik B2:B11 .

Methode 2: Converteer een string naar lang in VBA (alleen als de string een getal is)

 Sub ConvertStringToLong()

    Dim i As Integer

    For i = 2 To 11
        If IsNumeric(Range(" A " & i)) Then
            Range(" B " & i) = CLng(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 lang gegevenstype 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: converteer een string naar lang in VBA

Laten we zeggen dat we de volgende kolom met waarden in Excel hebben, momenteel opgemaakt als tekstreeksen:

Stel dat we elke string naar een lang gegevenstype willen converteren en deze in kolom B willen weergeven.

We kunnen hiervoor de volgende macro maken:

 Sub ConvertStringToLong ()

    Dim i As Integer

    For i = 2 To 11
        Range(" B " & i) = CLng(Range(" A " & i))
    Next i

End Sub

Wanneer we deze macro uitvoeren, ontvangen we de volgende uitvoer:

VBA converteert tekenreeks naar lang

Houd er rekening mee dat elke tekstreeks in kolom A is geconverteerd naar een lang gegevenstype en wordt weergegeven in kolom B.

Voorbeeld 2: Converteer een string naar lang in VBA (alleen als de string 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 lang gegevenstype willen converteren als de string een getal is en deze in kolom B willen weergeven.

We kunnen hiervoor de volgende macro maken:

 Sub ConvertStringToLong()

    Dim i As Integer

    For i = 2 To 11
        If IsNumeric(Range(" A " & i)) Then
            Range(" B " & i) = CLng(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 lange gegevenstypen in kolom B.

Anders worden tekstreeksen eenvoudigweg geconverteerd naar een nulwaarde.

Opmerking : u kunt hier de volledige documentatie voor de VBA CLng- 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?

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert