電子書籍の厳選無料作品が豊富!

EXCEL データをコピーして別シートの最初の空白行に貼り付け

解決方法がわからず再度質問させていただきます。
どなたかご教示お願いいたします。

シート
1-1 毎月決まった項目のデータが入ります。
1-4 1-1の月データを一年分貼付
2-1 毎月決まった項目のデータが入ります。
2-3 2-1の月データを一年分貼付
3-1 毎月決まった項目のデータが入ります。
3-2 3-1の月データを一年分貼付

1,2,3と三種類ありますが、やりたいことは同じで、
1-1、2-1、3-1には毎月決まったデータを貼り付けています。
そのデータをそれぞれ1-4、2-3、3-2の前月の最終行の次に継ぎ足しで貼り付けたいのです。
(項目の下の空白行に貼り付けたい)

1-1と1-4、2-1と2-3、3-1と3-2の項目は同じです。

-----------------------------------------------------------------------------------
1-1
A1:O1に項目(A2:02以下にデータが入り、行はその月によりまちまちです)
Q2:R28にはA2:O2以下のデータをカウントしています。

1-4
A1:O1に項目
A2:O2以下に一年分のデータを自動的に貼り付け
-----------------------------------------------------------------------------------
2-1
A1:L1に項目(A2:L2以下にデータが入り、行はその月によりまちまちです)
N2:O15にはA2:L2以下のデータをカウントしています。

2-3
A1:L1に項目
A2:L2以下に一年分のデータを自動的に貼り付け
-----------------------------------------------------------------------------------
3-1
A1:K1に項目(A2:K2以下にデータが入り、行はその月によりまちまちです)

3-2
A1:K1に項目
A2:K2以下に一年分のデータを自動的に貼り付け
-----------------------------------------------------------------------------------

EXCEL2003です。
マクロは記録程度の知識しかなく、申し訳ないのですが、
ここの部分をどうしても自動的に行いたいのです。
どうかよろしくお願いいたします。

A 回答 (1件)

それぞれの毎月分のデータを月末か月初に、年間シートに移植してるんですね。



元データのバックアップを取った上で、お試しファイルのほうでご確認ください。

********************************************************************************
Sub Harituke()

Dim k As Integer
Dim Rng As Range
Dim Ws(6) As Worksheet
Set Ws(1) = Worksheets("1-1")
Set Ws(2) = Worksheets("1-4")
Set Ws(3) = Worksheets("2-1")
Set Ws(4) = Worksheets("2-3")
Set Ws(5) = Worksheets("3-1")
Set Ws(6) = Worksheets("3-2")


For k = 1 To 5 Step 2
  Set Rng = Ws(k).Cells(1, 1).CurrentRegion
  Set Rng = Rng.Offset(1, 0).Resize(Rng.Rows.Count - 1, Rng.Columns.Count)
  Rng.Copy Ws(k + 1).Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
Next k

For k = 1 To 6
  Set Ws(k) = Nothing
Next k
Set Rng = Nothing

End Sub
    • good
    • 0
この回答へのお礼

ありがとうございます。
問題なくそれぞれのシートに貼付けができました。
本当に助かりました。ありがとうございました!

お礼日時:2010/07/17 17:05

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!