仅使用值导出工作表(而不是公式)

我正在努力导出工作簿中的工作簿之一。有了下面的代码,我能够做到这一点。但是我试图导出的工作表使用公式来检索工作簿中其他工作表中的数据。当我更改主工作簿中的值,导出的工作簿也会发生变化。如何仅使用值导出工作表?

Private Sub SAVE() On Error Resume Next location = Sheets("data").Range("j2").text date= Application.text(Now(), "dd/mm/yyyy") Ad = CreateObject("wscript.Shell") ActiveSheet.Copy ActiveWorkbook.SaveAs FileName:=Ad & location & date ".xlsm",FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False Application.DisplayAlerts = True ActiveWorkbook.Close End Sub 

ActiveSheet.Copy之后添加这段代码

 ActiveWorkbook.Sheets(1).UsedRange.Value = ActiveWorkbook.Sheets(1).UsedRange.Value 

只要您的工作表中没有合并单元格,这将工作。

作为一个方面的说明,variablesAd是不必要的保存工作簿。 只要location是有效的文件path, FileName:=location & date & ".xlsm"就可以工作。