| 
    
     |  | ▼hiyo さん: こんばんは。
 
 >二次元配列をシートの範囲に一発転写する方法はあるでしょうか?
 >二次元配列が持つ値を、繰り返し文など使って転写することは出来ますが
 >とても遅く
 >セル範囲の値の入力でも、(Rang("A1","G100").value = 1)のように
 >したら、繰り返し文で一つづつのセルに入力するよりも格段に早いので、
 >そういった方法がもしあれば教えてください。
 >また逆に、セル範囲を一発で二次元配列に格納する方法もあれば教えてください。
 過去ログにも↑たくさんありますけどね!!
 
 新規ブックの標準モジュールに
 
 '=======================================
 Sub sample()
 Dim g0 As Long, g1 As Long
 Dim array_lbl2(1 To 3, 1 To 3) As Long
 Dim rec_lbl2 As Variant
 Cells.Clear
 For g0 = 1 To 3
 For g1 = 1 To 3
 array_lbl2(g0, g1) = g0 * g1 + 1
 Next
 Next
 Range(Cells(1, 1), Cells(UBound(array_lbl2, 1), UBound(array_lbl2, 2))).Value = array_lbl2()
 MsgBox "二次元配列をセルに移行  確認!!"
 rec_lbl2 = Range(Cells(1, 1), Cells(UBound(array_lbl2, 1), UBound(array_lbl2, 2))).Value
 For g0 = LBound(rec_lbl2, 1) To UBound(rec_lbl2, 1)
 For g1 = LBound(rec_lbl2, 2) To UBound(rec_lbl2, 2)
 MsgBox rec_lbl2(g0, g1)
 Next
 Next
 MsgBox "セル範囲を二次元配列に移行"
 
 Erase array_lbl2()
 
 Erase rec_lbl2
 End Sub
 
 
 上記のコードとこれを実行した結果を調べてみて下さい。
 
 
 |  |