目前,我正在将工作表的值和格式复制到另一个工作簿中的工作表中:
workbooks("book1.xlsm").sheets(1).range(someRange).copy
with workbooks("book2.xlsm").sheets(1).range("A1")
.pasteSpecial xlPasteValues
.pasteSpecial xlPasteFormats
end with
我想使用类似的东西:
workbooks("book1.xlsm").sheet(1).copy after:=workbooks("book2.xlsm").sheet(1)
问题是book1.xlsm的表(1)中的一些单元格有公式。使用第二种方法拉取公式,结果值链接到book2.xlsm
中的数据如何使用第二种方法,但是复制了值而不是公式?
如果不可能,除了我目前正在使用的第一种方法之外,还有哪些替代方案?
答案 0 :(得分:0)
您可以在复制操作后断开链接:
Option Explicit
Sub copySheetValues()
With Workbooks("Book2")
Workbooks("Book1").Worksheets(1).Copy After:=.Worksheets(1)
Application.Wait Now + TimeValue("0:00:01") 'built-in replacement for "Sleep"
.BreakLink Name:=Workbooks("Book1.xlsm").FullName, Type:=xlLinkTypeExcelLinks
End With
End Sub
注意:两个文件都需要在Excel应用程序的同一个实例中打开