Ich bin nicht ganz sicher, warum ich die Fehlermeldung vonKann ich eine Variable zum ReDim eines Arrays verwenden?
Erwartung eines dynamischen Arrays var bekommen
mit diesem Code:
Option Explicit
Sub ArrayTest()
Dim i As Integer, BankList(0) As Variant, x As Integer
For i = 0 To UBound(ScreenArray)
If ScreenArray(i) Like "TR=SUB*" Then
Debug.Print ScreenArray(i)
ReDim Preserve BankList(x) '<<< ERROR LINE
BankList(x) = ScreenArray(i)
x = x + 1 'Raise the value for the next occurrence, if needed.
End If
Next
End Sub
Grundsätzlich ich versucht bin spezifisch zu bewegen Zeichenfolgen von einem Array zu einem neuen Array, wenn bestimmte Kriterien erfüllt sind. Es ist schwierig festzustellen, wie viele Zeichenfolgen in dem neuen Array enthalten sein werden, bis diese For...Next
-Anweisung ausgeführt wird.
Wenn Sie den Code nicht erkennen können, ist das ursprüngliche Array ScreenArray
und das neue Array ist BankList
.
Tun Sie das nicht. Sie sollten 'List (Of T)' – SLaks
@ YowE3K Wow Ich kann nicht glauben, dass es so einfach war. Vielen Dank! –
Ich hätte meinen Kommentar nicht so schnell löschen sollen !! (Ich begann zu zweifeln, ob ich recht hatte, also habe ich es los, während ich nachschaute. Es scheint, dass ich recht hatte.) – YowE3K