前提・実現したいこと
ExcelのVBAで、2次元配列を宣言し、指定した1つの列番号の要素の値を、指定したセルに一括で貼り付けたいです。
ソースコード全体で、For文をなるべく使わない方法を探しています。
1次元配列に2次元配列の1列分の要素を格納してから一括で貼り付ける、という方法はなしでお願いします。
ExcelVBAを勉強し始めて1か月ほどの初学者です。
該当のソースコード
ここでは、2次元配列の2列目を「C3:C6」のセルに一括で貼り付けることを試みています。
2列目を指定する方法がわからないため、2次元配列を一括で貼り付けているという処理になってしまっています。
VBA
1Sub Test() 2 Dim tmp(1 To 4, 1 To 3) As Integer 3 4 tmp(1, 1) = 1 5 tmp(2, 1) = 2 6 tmp(3, 1) = 3 7 tmp(4, 1) = 4 8 9 tmp(1, 2) = 5 10 tmp(2, 2) = 6 11 tmp(3, 2) = 7 12 tmp(4, 2) = 8 13 14 tmp(1, 3) = 9 15 tmp(2, 3) = 10 16 tmp(3, 3) = 11 17 tmp(4, 3) = 12 18 19 '2次元配列の2列目の要素を一括で貼り付ける 20 Range("C3:C6") = tmp 21 22End Sub 23
試したこと
2次元配列の要素を一括で貼り付ける方法はすぐに出てくるのですが、1列を指定してその列を一括で貼り付ける方法が、1時間ほど調べてもどうにもわかりませんでした。
ご回答よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー