VBA技巧:将Excel工作表复制到新工作簿而不保留旧的Excel工作簿引用
- 2026-11-07 22:38:26
VBA技巧:将Excel工作表复制到新工作簿而不保留旧的Excel工作簿引用学习Excel技术,关注微信公众号: excelperfect 欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。 欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料,并通过社群加入专门的微信讨论群,更方便交流。
标签:VBA
要将Excel工作表复制到新工作簿,很简单!在按住Ctrl键的同时单击要复制的工作表标签,然后将其拖放到新工作簿中;同样,使用VBA来复制Excel工作表也很简单。然而,如果这样,新工作簿中可能会带有对源工作簿的引用,如下图1所示。

图1
当然,你或许会考虑使用代码来替换掉源工作簿名称,但还是有点麻烦。
其中一个解决办法是,一次复制所有工作表,代码如下:
Sub CopyWorksheetsWithoutOldRef()Dim wks As WorksheetDim wkb As WorkbookSet wkb = Workbooks.Addwkb.SaveAs "NewCopyWithReference.xlsx"ReDim myArr(ThisWorkbook.Worksheets.Count - 1)Dim i As LongFor i = 0 To ThisWorkbook.Worksheets.Count - 1myArr(i) = ThisWorkbook.Worksheets(i + 1).NameNext iThisWorkbook.Worksheets(myArr).Copy wkb.Worksheets(Worksheets.Count)End Sub
结果如下图2所示。

图2
本文来自网友投稿或网络内容,如有侵犯您的权益请联系我们删除,联系邮箱:wyl860211@qq.com 。