当我创build我的Excel文件的副本时,它会创build一个链接到原始的。 我该如何阻止?

我目前正在运行一个脚本,创build我当前工作表的Excel备份,并通过电子邮件发送给其他人。

每次我这样做,它创build一个链接回到我的原始文件。 有没有办法来防止这种情况发生? 我不希望我保存或发送的文件有一个链接回到原来的,甚至任何链接。

这是我的保存工作簿的代码

Set wb = Workbooks.Add ThisWorkbook.Activate Current.Copy Before:=wb.Sheets(1) wb.Activate wb.SaveAs "E:\" & Current.Name & "-" & Format(Now, "dd-mmm-yy h-mm-ss") & ".xlsx", FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False Application.DisplayAlerts = False wb.Close Application.DisplayAlerts = True 

在准备发布的工作簿中:在Fluentfunction区的“数据”选项卡上,从“ 连接”组中select“ 编辑链接” ,然后在出现的对话框中进行适当的select。

在这里输入图像描述

您可以select使用当前值replace所有链接(我相信这是您的场景中最有可能的),也可以将链接redirect到另一个工作簿。

如果你RTFM,你会看到如何做到这一点:

 Sub breakLinks(wb As Workbook) Dim ls As Variant, i As Long ls = wb.LinkSources(xlLinkTypeExcelLinks) For i = 1 To UBound(ls) Debug.Print "breaking " & ls(i) wb.BreakLink ls(i), xlLinkTypeExcelLinks Next i End Sub 

呼叫签名:

 Set wb = Workbooks.Add ThisWorkbook.Activate Current.Copy Before:=wb.Sheets(1) breaklinks wb wb.Activate wb.SaveAs "E:\" & Current.Name & "-" & Format(Now, "dd-mmm-yy h-mm-ss") & ".xlsx", FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False Application.DisplayAlerts = False wb.Close Application.DisplayAlerts = True