Sub 配列呼び出し()
' 使用変数の宣言
Dim sh1, sh2
Dim cData, d, c, n
' シートを変数にセット
Set sh1 = Worksheets("Sheet1")
Set sh2 = Worksheets("Sheet2")
' コピー対応データ定義
cData = Split("A2:L A2:L,AZ M,Q N,AA O,AF P,W Q", ",")
' "A2:L A2:L,A2からL列までをA2からL列に貼り付け
’ AZ MはAZ列をM列に貼り付ける
' 使用最終行を取得
n = sh1.UsedRange.SpecialCells(xlCellTypeLastCell).Row
n = Application.Max(n - 1, 1)
' データに基づいて各列を順にコピーを繰り返す
For Each d In cData
' データから対応列を取得
c = Split(d, " ")
' 対応列内の値をコピー
sh2.Range(c(1) & "2").Resize(n).Value = sh1.Range(c(0) & "2").Resize(n).Value
' 繰り返し終了
Next d
End Sub
' 使用変数の宣言
Dim sh1, sh2
Dim cData, d, c, n
' シートを変数にセット
Set sh1 = Worksheets("Sheet1")
Set sh2 = Worksheets("Sheet2")
' コピー対応データ定義
cData = Split("A2:L A2:L,AZ M,Q N,AA O,AF P,W Q", ",")
' "A2:L A2:L,A2からL列までをA2からL列に貼り付け
’ AZ MはAZ列をM列に貼り付ける
' 使用最終行を取得
n = sh1.UsedRange.SpecialCells(xlCellTypeLastCell).Row
n = Application.Max(n - 1, 1)
' データに基づいて各列を順にコピーを繰り返す
For Each d In cData
' データから対応列を取得
c = Split(d, " ")
' 対応列内の値をコピー
sh2.Range(c(1) & "2").Resize(n).Value = sh1.Range(c(0) & "2").Resize(n).Value
' 繰り返し終了
Next d
End Sub
0 件のコメント:
コメントを投稿