Search

  毎日にもっと楽~を! BLOG Tokyo

2006年9月 6日

【エクセル】複数のシートを1枚にまとめる

以前に複数のブックから1枚にまとめるマクロを作りましたが、今回は同じブック内のシートを1枚にまとめます。シート丸ごとのコピーを対象シートの最後に貼り付けることはどうやらできないみたいなので*、For..Nextを使って、一枚一枚シートの記入範囲を調べて、対象シートにコピーしていきます。

*WorksheetsとRangeが別オブジェクトだからだと推測します。

Sub 複数のシートを1枚のシートへ()

Dim thetbl As Range, LRow As Long
Dim cnt As Long

cnt = Worksheets.Count

For i = 2 To cnt

Set thetbl = Worksheets(i).Range("A1").CurrentRegion

thetbl.Copy

With Worksheets("Sheet1")
'(3) 転記先のシートのどの行までデータが入っているかを調べる
LRow = .Range("A65536").End(xlUp).Row

If LRow = 1 Then
.Range("A" & LRow).PasteSpecial xlPasteValues
Else
.Range("A" & LRow + 1).PasteSpecial xlPasteValues
End If
End With
Next i
End Sub



Bookmark and Share


編集長のおすすめの一冊!2010

comments

comment form

(BLOG Tokyo にはじめてコメントされる場合、不適切なコメントを防止するため、掲載前に管理者が内容を確認しています。適切なコメントと判断した場合コメントは直ちに表示されますので、再度コメントを投稿する必要はありません。)

comment form