#author("2023-04-25T11:41:06+09:00","","")
#author("2023-05-01T13:04:47+09:00","","")
[[自分用のpukiwiki]]

 複数シートのデータを「全データ」シートへコピーする
 元データがあるシートは「全データ」の右側にあるシートから順番にデータをコピーします。
 このコード内から sh_check を実行していますので、 上記の sh_checkのコード も記載する必要があります。
 Sub matome()
  Dim i As Integer
  Dim lRow As Long, lCol As Long, lRow2 As Long
   Application.ScreenUpdating = False
    '----全データシートの有無をチェックします
   sh_check
   '----列見出しをコピーします
   Worksheets(2).Range("1:1").Copy Worksheets(1).Range("A1")
   For i = 2 To Worksheets.Count
     With Worksheets(i)
       lRow = .Cells(Rows.Count, 1).End(xlUp).Row
       lCol = .Cells(1, Columns.Count).End(xlToLeft).Column
       '----シートのデータが2行以上の場合にコピーします
       If lRow >= 2 Then
         lRow2 = Worksheets(1).Cells(Rows.Count, 1).End(xlUp).Row + 1
         .Activate
         .Range(Cells(2, 1), Cells(lRow, lCol)).Copy Worksheets(1).Cells(lRow2, 1)
       End If
     End With
   Next i
   Worksheets(1).Activate
   Range("A1").Select
   Application.ScreenUpdating = True
 End Sub
 セルをそのままコピーしていますので、数式などを含む場合には不都合があるかもしれません。
 貼り付け時に値の貼り付けを行う場合は
 Range(Cells(2, 1), Cells(lRow, lCol)).Copy Worksheets(1).Cells(lRow2, 1)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS