|
▼ハチ さん:
>▼popopo さん:
>>日毎のシートリンク作成のため、下記のVBAをサイトから検索して作成しました。
>>もとのブックが3メガと大きいため、シートの値と書式だけをコピーしたいと考えています。
>>しかし、このVBAを実行するとSheetのVBAもコピーされるし、計算式もコピーされて、2M程度の大きいブックとなってしまいます。
>>どうかお助け願います。
>
>先に新しいBookを作っておいて
>Sheetの値 と書式 だけとすると・・・
>
>Option Explicit
>
>Sub Test()
>
> Dim wb1 As Workbook, wb2 As Workbook
> Dim ws As Worksheet
> Dim 日付 As String
> Dim i As Integer
>
> Set wb1 = ThisWorkbook
> Set wb2 = Workbooks.Add(xlWBATWorksheet)
> wb2.Worksheets.Add After:=Worksheets(1)
> 日付 = wb1.Worksheets(1).Range("A1").Value
>
> i = 1
> For Each ws In wb1.Worksheets(Array("Sheet1", "Sheet3"))
> ws.Cells.Copy
> With wb2.Worksheets(i)
> '値
> .Range("A1").PasteSpecial Paste:=xlValues, _
> Operation:=xlNone, SkipBlanks:=False, Transpose:=False
> '書式
> .Range("A1").PasteSpecial Paste:=xlFormats, _
> Operation:=xlNone, SkipBlanks:=False, Transpose:=False
> 'Sheet名
> .Name = ws.Name
> Application.CutCopyMode = False
> End With
> i = i + 1
> Next ws
>
> wb2.SaveAs "D:\仕事\" & 日付 & ".xls"
> wb2.Close
> Set wb1 = Nothing
> Set wb2 = Nothing
>End Sub
有り難うございました。
おかげさまで助かりました。
ハチさん 又よろしくお願いいたします。
|
|