Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Mehrdimensionalles Array befüllen

Forumthread: Mehrdimensionalles Array befüllen

Mehrdimensionalles Array befüllen
03.04.2009 23:54:32
Ernst
Hallo Leute,
ich weiß nicht mehr weiter. Ich möchte ein mehrdimensionalles Array (DIM MyArryay(5,100)) befüllen, um dieses im Anschluss in eine ListBox einzuspielen. Ich habe das Array mit den Spalten und Zeilen definiert - funktioniert soweit auch. Da allerdings nur Werte mit einem bestimmten Wert übernommen werden, ergeben sich nun diverse Leerzeilen am Ende der ListBox - und das soll natürlich nicht sein.
Wie kann ich die Anzahl der Zeilen im Array dynamisch ändern? Oder kann ich die Anzahl der Zeilen im Array irgendwie offen lassen?
Gruß Ernst
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Mehrdimensionalles Array befüllen
04.04.2009 01:59:14
Daniel
Hi
wenn du die Anzahl der benötigten Zeilen irgendwie im Makro berechnen kannst, dann kannst du die Dimension des Arrays auch erst später im Makro festlegen:

Dim MyArray() as string
x = 5 'benötigge Zeilen
y = 100 'benötigte Spalten
Redim MyArray(x, y)


Sollte sich die Anzahl der Zeilen auch nicht berechnen lassen, sondern wirklich erst in der Schleife festgestellt werden, kann man mit REDIM RRESERVE das Array erweiteren ohne die bereits gespeicherten Werte zu verlieren.
mit Redim Preserve lässt sich aber nur die 2. Dimension erweitern (dh. Spalten, nicht Zeilen).
solltest du trotzdem die Zeilen variabel halten wollen, müsstest du die Zeilen eben in der 2. Dimension abbilden und dann bei der Übergabe der Daten in die Listbox mit TRANSPOSE im Array die Zeilen mit Spalten tauschen.
Gruß, Daniel

Anzeige
AW: Mehrdimensionalles Array befüllen
04.04.2009 10:13:04
Gerd
Hallo Ernst,
evtl. wäre eine Beispielmappe gut; um dein konkretes Problem nachvollziehen zu können.
Gruß Gerd
AW: Mehrdimensionalles Array befüllen
04.04.2009 10:50:54
Beverly
Hi Ernst,
die Werte aus A1:E100 werden in das Array eingelesen wenn in Spalte A die Zelle nicht leer ist:

Sub ArrayMehrdimensional()
Dim arrWerte()
Dim inZaehler As Integer
Dim inZeile As Integer
For inZeile = 1 To 100
If Cells(inZeile, 1)  "" Then
ReDim Preserve arrWerte(0 To 4, 0 To inZaehler)
arrWerte(0, inZaehler) = Cells(inZeile, 1)
arrWerte(1, inZaehler) = Cells(inZeile, 2)
arrWerte(2, inZaehler) = Cells(inZeile, 3)
arrWerte(3, inZaehler) = Cells(inZeile, 4)
arrWerte(4, inZaehler) = Cells(inZeile, 5)
inZaehler = inZaehler + 1
End If
Next inZeile
End Sub




Anzeige
AW: Mehrdimensionalles Array befüllen
04.04.2009 11:50:29
Ernst
Super :o)
Ich danke euch - das ist genau das was ich brauchte.
;

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