08.03.2016, 14:29
@Schülerin
Das Problem mit den sogenannten Zahleninseln im String ist die Möglichkeit des Auftretens von führenden Nullen. Daher ist das Herzstück dieses Codes auch folgende Formel:
Somit wäre ein kürzerer und besserer Weg die Zahleninseln in einem String zu finden:
Das Problem mit den sogenannten Zahleninseln im String ist die Möglichkeit des Auftretens von führenden Nullen. Daher ist das Herzstück dieses Codes auch folgende Formel:
Code:
'Ermittelt die nächste Reihe von Zahlen in einem String, einschließlich einer eventuell vorhandenen führenden Null:
Mid(Val("1" & Mid(strString, intA)), 2)
Somit wäre ein kürzerer und besserer Weg die Zahleninseln in einem String zu finden:
Code:
Sub Positionen_aller_Zahleninseln_in_einem_String()
Dim strString As String, strSuch As String, strErgebnis As String, intA As Integer
strString = "Nummer: 0845, Reihe: 0011, Bereich: 0005" 'Beispielsatz
For intA = 1 To Len(strString)
If IsNumeric(Mid(strString, intA, 1)) Then
strErgebnis = strErgebnis & ", Position: " & intA & " Zahl: " & Mid(Val("1" & Mid(strString, intA)), 2)
intA = intA + Len(Mid(Val("1" & Mid(strString, intA)), 2))
End If
Next
Debug.Print Mid(strErgebnis, 2, Len(strErgebnis))
End Sub