#vbaで他のbookに値だけ張り付けるコード
Option Explicit
Sub copyBook()
Dim objSheet As Worksheet
Dim wb As Workbook
Dim ws As Worksheet
' 貼り付け先ワークブックを作成
Set wb = Workbooks.Add
' 貼り付け元ブックの全シートを 1 つずつループして処理する
For Each objSheet In ThisWorkbook.Worksheets
Set ws = wb.Sheets(wb.Sheets.Count)
'名前同じにしたいなら以下の'外す
' ws.Name = objSheet.Name
' 貼り付け元の全ての値を貼り付け先ワークシートに張り付ける(値だけ)
ws.Range(objSheet.UsedRange.Address).Value = objSheet.UsedRange.Value
Set ws = Nothing
If ThisWorkbook.Sheets.Count <> wb.Sheets.Count Then
' 貼り付け先ワークシートを作成
wb.Sheets.Add After:=wb.Sheets(wb.Sheets.Count)
End If
Next
End Sub