2016-06-27 13 views
1

Ich versuche, Array-Variablen Bereiche in Arbeitsblättern zuzuordnen, und es funktioniert nicht so weit. Kein Experte zu diesem Thema in VB, jede Hilfe wird geschätzt. Die Bereiche, die ich eingetippt habe, sind definitiv, aber die Array-Deklaration für die Zeilen- und Spaltengröße ist bisher nur eine Vermutung. Vielen Dank!Zuweisen eines Arbeitsblattbereichs zu einem Array

Dim runningavg(1 To 10000, 1 To 76), chartdata(1 To 598, 1 To 121) As Long 

runningavg = Worksheets("Running Avg Log").Range("A4:BX10004") 
chartdata = Worksheets("Chart Data").Range("B6:DR604") 
+3

Änderung Ihrer Dim Zeile zu 'Dim runningavg() As Variante Chartdata() As Variant' –

+0

Die erste gearbeitet haben sollte ... – findwindow

+0

habe ich versucht, diese, und der Fehler immer noch sagen, dass ich„nicht zuweisen zu array ". @Scott Craner –

Antwort

4

Dies funktioniert - ein Variant zugewiesen werden kann, um nur über etwas:

Dim runningavg as variant, chartdata as variant 

runningavg = Worksheets("Running Avg Log").Range("A4:BX10004").value 
chartdata = Worksheets("Chart Data").Range("B6:DR604").value 

Sie können nicht eine ganze Reihe in ein Array lesen, wenn die Array-Größe schon ist und keine Variante. Um dies mit einem festen Array zu tun, müssten Sie zeilenweise in das Array schreiben.

+1

Machen Sie Ihre Aussagen fetter; 'Das wird funktionieren' und entfernen Sie das' Ich glaube nicht' Wenn Sie Recht haben, haben Sie Recht. –

Verwandte Themen