[英]Excel VBA how to copy cell content from one book to another
我正在尝试创建一个宏,它将宏内容从一个工作簿复制到另一个工作簿。 问题是,在原始工作簿中,有指向该工作簿内另一个工作表的链接,而在我的宏执行该工作之后,这些链接引用了源文件的工作表。 例如,在源文件中,我有=CONCATENATE(A1,Sheet2!A1)
,在复制后,单元格内容变为=CONCATENATE(A1,[Source.xlsm]Sheet2!A1)
避免出现此[Source.xlsm]
吗?
Sub Copy()
Dim wbk As Workbook
Range("A1:B1").Copy
Set wbk = Application.Workbooks.Open(ThisWorkbook.Path & "/subdir/destination.xlsx")
With wbk.Sheets("Sheet1")
Range("A1").PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
End With
End Sub
提前致谢
使用Range.Replace方法从公式中删除[Source.xlsm] 。
With wbk.Sheets("Sheet1")
.Range("A1").PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
.Cells.Replace What:="[Source.xlsm]", Replacement:="", LookAt:=xlPart, _
MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
End With
顺便说一句,你错过了.
在.Range("A1").PasteSpecial...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.