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

Array auslesen

Forumthread: Array auslesen

Array auslesen
13.03.2009 13:33:42
Petra
Hallo allerseits,
wie kann ich ein 2 dimensionales Array (ca. 500 Zeilen, 6 Spalten) ganz schnell, so "auf einen Schlag" in ein Sheet einlesen?
Wer kann mir helfen?
Liebe Grüße
Petra
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Array auslesen
13.03.2009 13:51:53
schauan
Hallo Petra,
Du musst es in einen gleichgroßen Zellbereich einfügen. Falls die Ausrichtung nicht stimmt, dabei mit der worksheetfunction.transpose noch 90 grad drehen.
Range("A1:B5")=MeinArray
oder
Range("A1:B5")=worksheetfunction.transpose(MeinArray)
AW: Array auslesen
13.03.2009 14:03:38
Petra
Hi schauan
ich schnalls trotzdem nicht, mein Makro:

Sub Test()
Dim arr() As Variant
Dim anzahl As Long
Dim i As Long, L As Long, x As Long
anzahl = Cells(Cells.Rows.Count, 1).End(xlUp).Row - 5
ReDim arr(anzahl, 6)
i = 0
For i = 1 To anzahl
arr(i, 1) = Cells(i + 5, 2)
arr(i, 2) = Cells(i + 5, 3)
arr(i, 3) = Cells(i + 5, 4)
arr(i, 4) = Cells(i + 5, 5)
arr(i, 5) = Cells(i + 5, 6)
arr(i, 6) = Cells(i + 5, 7)
Next
Sheets("Test").Cells(1, 1) = arr(605, 2)
'    Sheets("Test").Range(Cells(1, 1), Cells(UBound(arr, 1), UBound(arr, 6))) = arr
'    Sheets("Test").Range(Cells(1, 1), Cells(605, 6)) = arr
End Sub


ein Wert zuordnen ist OK, das ganze Array klappt nicht
kann mir trotzdem noch jemand den entscheidenden Tipp geben?
liebe Grüße Petra

Anzeige
AW: Array auslesen
13.03.2009 14:22:20
Tino
Hallo,
Deinen Vode verstehe ich nicht so richtig.
Meinst Du so?

Sub Test()
Dim arr
arr = Range("B1", Cells(Rows.Count, 1).End(xlUp).Offset(0, 6))
Sheets("Test").Cells(1, 1).Resize(UBound(arr, 1), UBound(arr, 2)) = arr
End Sub


Gruß Tino

Anzeige
AW: Array auslesen
13.03.2009 14:25:42
Petra
Danke Tino
das wars, die entscheidende Zeile war:
Sheets("Test").Cells(1, 1).Resize(UBound(arr, 1), UBound(arr, 2)) = arr
vielen Dank und ein schönes Wochenende
Petra
AW: Array auslesen
13.03.2009 14:38:21
schauan
... und bei mir war die transpose zuviel. Ohne geht's auch.
AW: Array auslesen
13.03.2009 14:25:34
schauan
Hallo,
war doch fast richtig ;-)
Beim Zellbereich musst Du beachten, dass in diesem Fall das Array bei 0 beginnt und die Zellen erst bei 1. Entsprechend musst Du den ubound um 1 erhöhen.
Dann ist die Sache mit den Zeilen und Spalten noch zu transponieren.


Sub Test()
Dim arr() As Variant
Dim anzahl As Long
Dim i As Long, L As Long, x As Long
anzahl = Cells(Cells.Rows.Count, 1).End(xlUp).Row - 5
ReDim arr(anzahl, 6)
i = 0
For i = 1 To anzahl
arr(i, 1) = Cells(i + 5, 2)
arr(i, 2) = Cells(i + 5, 3)
arr(i, 3) = Cells(i + 5, 4)
arr(i, 4) = Cells(i + 5, 5)
arr(i, 5) = Cells(i + 5, 6)
arr(i, 6) = Cells(i + 5, 7)
Next
Sheets("Test").Cells(1, 1) = arr(605, 2)
Sheets("Test").Range(Cells(1, 1), Cells(UBound(arr, 1) + 1, UBound(arr, 2) + 1)) =  _
WorksheetFunction.Transpose(arr)
'    Sheets("Test").Range(Cells(1, 1), Cells(605, 6)) = arr
End Sub



Anzeige
AW: Array auslesen
13.03.2009 15:52:03
Petra
Hallo Schauan
auch Dir ein dickes DANKESCHÖN
Gruß Petra
;

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