Zum Beispiel habe ich eine Zeichenfolge A-456-BC-123;DEF-456;GHI-789
. Und ich muss nach dem zweiten Teil suchen: DEF-456
mit Schlüsselwort 456
. Das potentielle Problem hierbei ist, dass der erste Teil A-456-BC-123
auch das Schlüsselwort 456
hat. Derzeit ist meine Logik, dass split
die Zeichenfolge zunächst ;
, split
jedes davon wieder mit -
, den letzten Artikel dieser Array
, Suchwort 456
. Eine andere Sache ist, dass ich nicht eine vollständige Keyword-Übereinstimmung wie DEF-456
machen möchte, ich möchte nur 456
als Schlüsselwort verwenden, um DEF-456
zu finden, mit anderen Worten, 456
sollte das letzte Segment der Zeichenfolge, die ich möchte.Index außerhalb des Bereichs, wenn versucht wird, das letzte Element eines Array zu bekommen
Hier sind meine Codes:
FirstSplit= split("A-456-BC-123;DEF-456;GHI-789",";")
For each code in FirstSplit
SecondSplit = split(FirstSplit,"-")
'get Array Count
Count = Ubound(SecondSplit)
'get the last item in Array
If SecondSplit(Count-1) = "456" Then
'doing something
End if
Next
Derzeit wird ein Fehler bei SecondSplit(Count-1)
erzeugen, sagen, dass "Subscript out of range: '[number: -1]'"
mir jemand sagen könnte, wie es zu beheben?
Oder verwenden Sie etwas wie 'InStr (1, StrReverse (Code)," - ")' anstelle von hart codieren die Anzahl der Zeichen von 'Right()' zurückzukehren. – Lankymart