我目前正在运行一个脚本,该脚本会创建当前工作表的Excel备份,并通过电子邮件发送给其他人。
每次我这样做,它都会创建一个返回原始文档的链接。有没有办法防止这种情况发生?我不希望我保存或发送的文件链接回原始文件,甚至根本没有任何链接。
这是我保存工作簿的代码
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
答案 0 :(得分:1)
在准备发布的工作簿中:在Fluent功能区的“数据”选项卡上,从 Connections 组中选择编辑链接,然后在对话框中进行适当的选择出现了。
您可以选择使用当前值(我认为最有可能在您的方案中)替换所有链接,以及将链接重定向到另一个工作簿。
答案 1 :(得分:0)
如果您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