• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:マクロを使ってシートの内容を一つのシートにまとめたい)

マクロを使って複数のシートを統合する方法

このQ&Aのポイント
  • マクロを使って複数のシートの内容を一つのシートにまとめる方法を教えてください。
  • 対象となる各シートの内容は列はC列まで、行はせいぜい10行程度です。
  • シートの内容はA1には必ず何か入っており、A2からはデータが連続しています。マクロで統合することは可能でしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.4

とりあえず以下のマクロでいかがでしょう ThisWorkbookに記載してください。 Sub test() Dim End_Row, Last_Row Dim mSpace As Integer, i As Integer, j As Integer Dim New_Sheet_Name As String Last_Row = 1 mSpace = 2 New_Sheet_Name = "New Sheet" If Worksheets(Worksheets.Count).Name = New_Sheet_Name Then Exit Sub End If Worksheets.Add(After:=Worksheets(Worksheets.Count)).Name = New_Sheet_Name For i = 4 To Worksheets.Count - 1 End_Row = 1 For j = 1 To 3 If End_Row < Worksheets(i).Cells(Rows.Count, j).End(xlUp).Row Then End_Row = Worksheets(i).Cells(Rows.Count, j).End(xlUp).Row End If Next j Worksheets(i).Range("A1:C" & End_Row).Copy If i Mod 2 = 0 Then Worksheets(Worksheets.Count).Range("A" & Last_Row).PasteSpecial Else Worksheets(Worksheets.Count).Range("F" & Last_Row).PasteSpecial Last_Row = Last_Row + End_Row + mSpace End If Next i End Sub

reprogress
質問者

お礼

kmetuさん、お礼遅れて申し訳ございません! なんとスゴイ!! まったくこの通りのことがしたかったのです。 本当にありがとうございました!!!

その他の回答 (3)

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.3

頭の中で大体の流れはできたのですが、もう少し教えてください 左から順にシート1からシート10まであるとしてシート3までは手をつけず 手をつけるシート4からシート10までのデータはどこに書き込めばいいでしょうか シート11を作成してそこに書き込む? また、シートはブックに存在するシートのすべてを対象にすると考えればいいですか それともユーザーに対象にするシート数を入力してもらうようにしますか > C列までデータはいつもそろっていて、いつも同じようになっています これはどのシートもC列までデータが入っていると考えればいいですか 「いつも同じよう」という意味がちょっと分かりかねます。

reprogress
質問者

お礼

ご回答ありがとうございます。お返事いつも遅くなり申し訳ございません。 >シート11を作成してそこに書き込む? そうしたいと思っています。 >これはどのシートもC列までデータが入っていると考えればいいですか そうです。 いつも同じよう、というのは表現がおかしかったです。 わかりづらくて申し訳ございません。

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.2

また シート4 シート5 シート6 シート7 シート8 シート9 シート10 シート11 と言うように並んでいくのでしょうか。 それと横方向がB列までのデータとC列までのデータが 混在した場合縦筋を食い違えるのか縦筋をそろえるのかどちらでしょうか

reprogress
質問者

お礼

ご回答ありがとうございます。最初のご回答は例Bの方が適しています。 次のご回答については仰るように並んでいきます。 よこ方向についてですが、 C列までデータはいつもそろっていて、いつも同じようになっています。

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.1

たとえばシート4がC列の4行までデータがありシート5は3行までデータがある シート6は2行シート7は3行だった場合以下のどちらの配置になりますか 例A 444 555 444 555 444 555 444    777 666 777 666 777 例B 444 555 444 555 444 555 444     666 777 666 777    777

関連するQ&A

専門家に質問してみよう