Ich möchte ein eindimensionales Array redigieren, indem ich die ersten fünf Einträge "abschneide", da sie für eine spätere Logik entfernt werden müssen.ReDim des eindimensionalen Arrays wirft 'Index außerhalb des Bereichs'
- habe ich einen Datensatz aus einer Abfrage
- I As Variant ein Array-Cord() gefüllt (Größe 147). Jetzt: Größe von recordSet = Größe von daoRst3
- Ich versuche, die ersten fünf Elemente des Array recordSet zu entfernen.
Code:
Set daoRst3 = gDB.OpenRecordset("SELECT * FROM TEST")
For i = 0 To daoRst3.Fields.Count - 1
ReDim Preserve recordSet(0 To i)
If daoRst3.Fields(i).Value = Empty Then
recordSet(i) = 0
Else: recordSet(i) = daoRst3.Fields(i).Value
End If
Next
'First five values in record set are not needed anymore.
ReDim Preserve recordSet(5 To i - 1)
Die letzte Zeile
ReDim Preserve recordSet(5 To i - 1)
"Subscript out of range" wirft. Ich habe bereits überprüft, dass ich in diesem Moment 148 bin.
Was könnte das Problem sein?
Vielen Dank im Voraus!
Sie mißdeuten Redim sowieso. Selbst wenn es erfolgreich ist, wird Redim (5 bis 10) die ersten fünf Einträge nicht ausschneiden, sondern vom Ende aus schneiden und die Indizierungsbasis ändern. –