Microsoft Excel

Herbers Excel/VBA-Archiv

ReDim klappt nicht



Excel-Version: 8.0 (Office 97)

Betrifft: ReDim klappt nicht
von: Timo
Geschrieben am: 30.05.2002 - 13:20:43

Hi zusammen!

Ich habe ein kleines Verständnisproblem. In einem recht unfangreichen Makro möchte ich ein dynamisches Array verkleinern. Sollte eigentlich auch kein Problem sein, da ich das nicht zum ersten Mal mache. Leider erhalte ich immer den Fehler Index ausserhalb des gültigen Bereichs, nur leider weiss ich nicht wieso... Ich poste einfach mal die relevanten Zeilen, vielleicht weiss ja jemand eine Lösung!


Sub MeinMakro
Dim StartEnde() As Single
Dim As Byte

'[Hier fehlen ca. 20 Zeilen Quellcode da irrelevant]

For i = 0 To 9
    If StartEnde(i, 1) = 0 Then
        ReDim Preserve StartEnde(0 To i-1, 1 To 2) 'Hier der Fehler
        Exit For
    End If
Next i

StartEnde(5, 2) ist das letzte Feld im Array, das tatsächlich gefüllt ist, weshalb kann ich das Array aber nicht verkleinern?

Ein verzweifelter Timo wartet auf Antworten...

PS: Und es wünsche mir bitte niemand einen schönen Feiertag, da ich heute arbeiten darf. Was eigentlich Grund genug wäre, mal eine grundlegende Diskussion über Feiertage zu starten... Nur weil ich in Niedersachsen wohne... *ärger*

  

Re: ReDim klappt nicht
von: MRR
Geschrieben am: 30.05.2002 - 13:47:41

Soweit ich mich erinnere, kannst Du nur die LETZTE Dimension verändern - und die bisherigen Daten behalten. Du müsstest demnach Dein Array anders aufziehen: Die 1 To 2-Dimension muss nach vorne, dann kannst Du auch die 2. Dimension abändern.
HTH, Matthias
  

Re: ReDim klappt nicht
von: Timo
Geschrieben am: 30.05.2002 - 13:57:14

Aha. Na auf sowas soll man erstmal kommen... Werde das gleich mal testen!

Big THX!


  

Re: ReDim klappt nicht
von: Timo
Geschrieben am: 30.05.2002 - 14:03:38

Ich könnt dich küssen! Es funzt tatsächlich. Da hat wohl wieder ein MS-Progger gekokst und keinen klaren Gedanken mehr fassen können, oder wie? Naja, Hauptsache es geht jetzt...

Gruss
TImo