@bernhard
Der interne Name des Arrays und warum er beim Coplien schon gemeckert hat kann ich jetzt auch nicht mehr nachvollziehen /*Wundert sich*/
@all
Nach ein wenig experimentieren:
Das hier geht nicht da fliegt er mit einem Subscript out of Range auf die Nase
Dim SplitFieldArray() As String
Dim i As Integer
Dim j As Integer
I = 50
Redim SplitfieldArray(i,1) As String
For i = 0 To 40
splitfieldArray(i,0) = "feld_1 " + Cstr(i)
splitfieldArray(i,1) = "feld_2 " + Cstr(i)
Next
Redim Preserve SplitfieldArray(i,1) As String
und zwar egal ob i größer oder kleiner oder sonst irgendwas ist.
Wohingegen das hier:
Dim SplitFieldArray() As String
Dim i As Integer
Dim j As Integer
I = 50
Redim SplitfieldArray(i,1) As String
For i = 0 To 40
splitfieldArray(i,0) = "feld_1 " + Cstr(i)
splitfieldArray(i,1) = "feld_2 " + Cstr(i)
Next
Redim Preserve SplitfieldArray(50,0) As String
Ohne Probleme rauf und runter funkioniert.
Also, Thomas hat recht, wenn man mit mehrdimensionalen Arrays arbeitet, dann kann man immer nur die letzte Dimension ändern, die allerdings rauf wie runter.
Das bedeutet dann fürs Programmieren, das man erst einmal die Anzahl der ersten Dimensionen eines Arrays ermitteln muss und anschließend das Array zweckbestimmt exakt dimensionieren sollte.
Thomas