Hallo Wissende,
bei /t/excel-vba-array-verwuerfeln-und-aufteilen/5585026/2
Ich definiere/deklariere ein Array mit
Dim MeinArray()
Jetzt möchte ich in einer Schleife dieses Array befüllen.
Das versuche ich mit
ReDim Preserve MeinArray(UBound(MeinArray) + 1)
MeinArray(UBound(MeinArray)) = Chr(N)
Leider geht das schief da durch UBound(MeinArray) ein Fehler kommt,
(Index außerhalb des gültigen Bereiches)
Mit Einführung der Hilfsvariablen „Anz“ klappt es dann, siehe Code von Klappt und Klappt nicht.
Gibt es eine Variante dies auch ohne Hilfsvariable zu erreichen?
Dim MeinArray()
ReDim Preserve MeinArray(UBound(MeinArray) + 1)
klappt auch nicht, obwohl ich dann sowieso ein leeres MeinArray(0) hätte
Danke ^ Gruß
Reinhard
Sub KlapptNicht()
Dim MeinArray() As String, N As Byte
For N = 65 To 67
ReDim Preserve MeinArray(UBound(MeinArray) + 1)
MeinArray(UBound(MeinArray)) = Chr(N)
MsgBox MeinArray(UBound(MeinArray))
Next N
End Sub
'
Sub Klappt()
Dim MeinArray() As String, N As Byte, Anz As Byte
For N = 65 To 67
ReDim Preserve MeinArray(Anz)
MeinArray(UBound(MeinArray)) = Chr(N)
MsgBox MeinArray(UBound(MeinArray))
Anz = Anz + 1
Next N
End Sub