So konvertieren sie eine zeichenfolge in vba in eine lange zeichenfolge (mit beispielen)
Sie können die CLng- Funktion in VBA verwenden, um eine Textzeichenfolge in einen langen Datentyp zu konvertieren.
Hier sind zwei gängige Möglichkeiten, diese Funktion in der Praxis zu nutzen:
Methode 1: String in VBA in Long konvertieren
Sub ConvertStringToLong () Dim i As Integer For i = 2 To 11 Range(" B " & i) = CLng(Range(" A " & i)) Next i End Sub
Dieses spezielle Makro konvertiert jede Zeichenfolge im Bereich A2:A11 in einen langen Datentyp und zeigt lange Werte im Bereich B2:B11 an.
Methode 2: Konvertieren Sie einen String in VBA in Long (nur wenn der String eine Zahl ist)
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
Dieses spezielle Makro konvertiert jede Zeichenfolge im Bereich A2:A11 nur dann in einen langen Datentyp, wenn die Zeichenfolge eine Zahl ist. Andernfalls wird die Zeichenfolge in einen Nullwert konvertiert.
Die folgenden Beispiele zeigen, wie die einzelnen Methoden in der Praxis angewendet werden.
Beispiel 1: Konvertieren Sie einen String in VBA in Long
Nehmen wir an, wir haben die folgende Wertespalte in Excel, derzeit als Textzeichenfolgen formatiert:
Angenommen, wir möchten jede Zeichenfolge in einen langen Datentyp konvertieren und in Spalte B anzeigen.
Dazu können wir das folgende Makro erstellen:
Sub ConvertStringToLong () Dim i As Integer For i = 2 To 11 Range(" B " & i) = CLng(Range(" A " & i)) Next i End Sub
Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:
Beachten Sie, dass jede Textzeichenfolge in Spalte A in einen langen Datentyp konvertiert wurde und in Spalte B angezeigt wird.
Beispiel 2: Konvertieren Sie eine Zeichenfolge in VBA in eine lange Zeichenfolge (nur wenn die Zeichenfolge eine Zahl ist)
Nehmen wir an, wir haben die folgende Wertespalte in Excel, derzeit als Textzeichenfolgen formatiert:
Angenommen, wir möchten jede Zeichenfolge nur dann in einen langen Datentyp konvertieren, wenn die Zeichenfolge eine Zahl ist , und diese in Spalte B anzeigen.
Dazu können wir das folgende Makro erstellen:
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
Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:
Beachten Sie, dass nur Textzeichenfolgen in Spalte A, die Zahlen sind, in Spalte B in lange Datentypen konvertiert werden.
Andernfalls werden Textzeichenfolgen einfach in einen Nullwert konvertiert.
Hinweis : Die vollständige Dokumentation zur VBA CLng- Funktion finden Sie hier .
Zusätzliche Ressourcen
Die folgenden Tutorials erklären, wie Sie andere häufige Aufgaben in VBA ausführen:
VBA: So entfernen Sie Leerzeichen aus einer Zeichenfolge
VBA: So zählen Sie das Vorkommen von Zeichen in einer Zeichenfolge
VBA: So überprüfen Sie, ob eine Zeichenfolge eine andere Zeichenfolge enthält