- ベストアンサー
マクロ リストの項目をセル参照で表示したい
1列もののリストの値を1行目から順番に拾って、別の場所にセル参照で表示するとき、 1行につき、3個表示(1,1),(1,7),(1,13)し、3行分改行してまた、3個表示(4,1),(4,7),(4,13)し、また同じように改行して、という要領で、全部で300個近くを 入力していきたいと思います。リストの数だけを自動で転記させるようにしたいのです。 マクロでの記述を教えていただければと存じます。 よろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは! 関数ではダメですか? 仮に元データがSheet1にあり、Sheet2のA1セル以降に表示させたい場合は Sheet2のA1セルに =OFFSET(Sheet1!$A$1,(ROW(A1)-1)*3,(COLUMN(A1)-1)*6,1) という数式を入れC1セルまでオートフィルでコピー! そのまま下へコピー!で大丈夫だと思います。 どうしてもVBAでやりたい場合は Sheet2のSheetモジュールにしてみてください。 Sub Sample1() Dim i As Long, cnt As Long Dim wS As Worksheet Set wS = Worksheets("Sheet1") Range("A:C").ClearContents For i = 1 To wS.Cells(Rows.Count, "A").End(xlUp).Row Step 3 cnt = cnt + 1 With Cells(cnt, "A") .Value = wS.Cells(i, 1) .Offset(, 1) = wS.Cells(i, 7) .Offset(, 2) = wS.Cells(i, 13) End With Next i End Sub こんな感じでしょうかね?m(_ _)m
お礼
いつもご丁寧なご回答をありがとうございます。 大変助かりました。