◆配列を使う
Excelの表は、そのままで2次元配列ですよね。
Excel の VBA で配列を使うメリットは、セルの内容(Rangeオブジェクト)を配列に入れて
高速に処理できることです。
私の実験では10倍ぐらい速くなります。
ただし、配列に入れられるのは、セルの値だけなので、プロパティなどの操作はできま
せん。
セルの内容を配列に入れるには test1 のようにします。
Sub test1()
Dim Arrange As Variant
Arrange = Range("A1:K100")
End Sub
バリアント型変数にRangeオブジェクトを代入します。
バリアント型変数に代入することで変数Arrangeも配列になります。
最初から
Dim AA(100,11) As Long
AA = Range("A1:K100")
こうしてもコンパイルエラーになります。
逆に、配列からセルに代入するには test2 のようにします。
Sub test2()
Dim Arrange(100, 11) As Integer
Dim i, j, Max_Column As Integer
For i = 1 To 100
For j = 1 To Columns("K").Column
Arrange(i, j) = i * j
Next
Next
Range("A1:K100") = Arrange
End Sub