Problem Array to Range
08.03.2007 19:47:00
Dieter
kleines Problem, und heute bestimmt eine Stunde gegoogelt... Aber leider ohne Ergebniss.
Option Base 1
Sub TestArray()
Dim arrTest As Variant
'*** Die Zellen A1:E2 werden als Array eingelesen
arrTest = Range(Cells(1, 1), Cells(2, 5))
'*** Mit einer Zeile wird der Inhalt des Array in einen definierten _
Range geschrieben.
Range(Cells(5, 1), Cells(UBound(arrTest, 1) + 4, UBound(arrTest, 2))) = arrTest
End Sub
In dem SubTestArray wird ein Range in ein Array geschrieben, und das ganze geht auch genauso schön zurück.
Was ist aber, wenn ich nur einen Teilbereich des Arrays in einen Range schreiben möchte. Zum Beispiel die Zeile 1.
Denn Range zu definieren ist nicht schwer, aber kann ich den Inhalt des Arrays zurück schreiben... und jetzt kommts: OHNE eine Forschleife, in der ich dann Spalte für Spalte zurück schreibe... in der Art:
Range(cells(4, 1), cells(4, uBound(arrTest, 2)) = ?array?
Und so mache ich es jetzt... und es ist mehr als deprimierent.
Sub TestArray2
Dim arrTest As Variant
dim iSpalte As Integer
'*** Die Zellen A1:E3 werden als Array eingelesen
arrTest = Range(Cells(1, 1), Cells(2, 5))
for iSpalte = 1 to uBound(arrTest,2)
cells(4,iSpalte)=arrTest(1, iSpalte)
next iSpalte
End Sub
Schön wenn mir jemand helfen kann.
In diesem Sinne noch einen schönen Abend...
Dieter W.