116 枚のシートを含む Excel ファイルを 1 つのシート ("Tab_Appended") に追加します。次のコードを試してみましたが、動作します。ただし、シートの列 A は Tab_Appended に貼り付けられません。ヘッダー行を除くすべてのデータを Tab_Appended にコピーするには、コードをどこで変更する必要がありますか?
ところで、「ケース」でいくつかのシートを除外しましたが、すべてのシートをリストするのではなく、文字列「凡例」を含むすべてのシートを除外するよりエレガントな方法はありますか?
Sub SummurizeSheets()
Dim ws As Worksheet
Dim lastRng As Range
Dim lastCll As Range
Application.ScreenUpdating = False
Sheets("Tab_Appended").Activate
For Each ws In Worksheets
Set lastRng = Range("A65536").End(xlUp).Offset(1, 0)
Select Case ws.Name
Case "Tab_Appended", "Legende 1", "Legende 2", "Legende 3", "Legende 4", "Legende 5", "Legende 6", "Legende 7", "Legende 8", "Legende 9", "Legende 10", "Legende 11", "Legende 12", "Legende 13"
'do nothing
Case Else
Set lastCll = ws.Columns(1).Find(What:="*", After:=ws.Range("A1"), SearchDirection:=xlPrevious)
ws.Range("A2:" & lastCll.Address).Copy
Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial (xlPasteValues)
'add sheet name before data
lastRng.Resize(lastCll.Row - 1) = ws.Name
End Select
Next ws
Columns("A").SpecialCells(xlBlanks).EntireRow.Delete (xlUp)
Application.ScreenUpdating = True
End Sub