Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

ReDim bei mehrdimins. Array

Forumthread: ReDim bei mehrdimins. Array

ReDim bei mehrdimins. Array
17.04.2014 15:40:27
Achim
Hallo,
ich habe folgendes versucht:
Dim arrFeld() as String, zaehler as Integer
...
...
ReDim Preserve arrFeld(1 To zaehler, 1 To 5)
...
Ich erhalte eine Fehlermeldung: "Index außerhalb gültigen Bereichs ...", CodeNr. 9
Was mache ich falsch, oder geht ein ReDim bei mehrdiminsionale Arrays nicht?
Danke und Viele Grüße
Achim

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Der Fehler liegt in den ... (owT)
17.04.2014 15:50:44
EtoPHG

...oder es wird zyklisch redimmt, dann kann ...
17.04.2014 16:12:59
Luc:-?
…beim 2.Mal nur die letzte Dimension redimmt wdn, Achim,
falls zaehler sich inzwischen geändert hat. Findet man auch in der VBE-Hilfe!
Gruß & FrOst, Luc :-?

AW: ...oder es wird zyklisch redimmt, dann kann ...
17.04.2014 16:27:00
Achim
Hallo Luc:-?
Danke für Deine Antwort.
Kannst Du mir kurz die Codezeile zeigen?
Wäre dies so etwa?
ReDim Preserve arrFeld(1 To zaehler, ) - also die zweite Diminsion frei lassen, oder wie geht dass?
Es wird übrigends die erste Diminsion ReDimed ...
Oder muss ich dann beim ersetn Dim sowas schreiben:
Dim arrFeld( , 1 To 5)
ReDim Preserve arrFeld(1 To zaehler, )
Danke, und auch Dir frohe Ostern ... :-)
Viele Grüße
Achim

Anzeige
ReDim Preserve mehrdimensional
18.04.2014 01:07:29
Erich
Hi Achim,
das steht recht deutlich in der VBA-Hilfe zu ReDim:
"Die Anzahl der Dimensionen kann nicht verändert werden.
Mit dem Schlüsselwort Preserve können Sie nur die Größe der letzten Datenfelddimension
ändern. Wenn das Datenfeld zum Beispiel nur eine Dimension hat, können Sie die Größe
dieser Dimension ändern, weil es die letzte und einzige Dimension ist.
Hat das Datenfeld jedoch mindestens zwei Dimensionen, so können Sie lediglich die
Größe der letzten Dimension ändern, wenn der Inhalt des Datenfeldes erhalten bleiben soll."
Das heißt:
Dim arrFeld() as String, zaehler as Integer
ReDim Preserve arrFeld(1 To zaehler, 1 To 5) - ist falsch,
ReDim Preserve arrFeld(1 To 5, 1 To zaehler) - ist richtig.
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige