问题
Excel工作簿内含有一个或多个外边链接,需要清除(如下图)。每次打开工作簿会被提示是不是更新,况且外边数据亦占用空间。能不可一键删除所有外边链接?
当然能够。先看下效果。
处理方法
↑ 存在外边链接
↑ 外边链接名单
↑ 新建VBA宏程序,一键批量删除外边链接
↑ 点击按钮运行VBA程序后,检测结果:OK
VBA程序源代码:Sub breakAllLinks()
Call breakLinksByType(xlLinkTypeExcelLinks)
Call breakLinksByType(xlLinkTypeOLELinks)
End Sub
Sub breakLinksByType(vType AsXlLinkType)On Error Resume Next
Err.Clear
aLinks = ActiveWorkbook.LinkSources(vType)
For i = 1 To UBound(aLinks)
Debug.Print "Link " & i & " : "& sName;
ActiveWorkbook.BreakLink _
Name:=aLinks(i), _
Type:=vType
If Err.Number = 0 Then
Debug.Print " has been deleted!"
iCnt = iCnt + 1End If
Next
End Sub干货
Windows下的Excel外边链接有2种:ExcelLinks 和 OLELinks
运用2个办法:
1) 获取链接数组:
Workbook.LinkSources(xlLinkType)
2) 断开链接:
Workbook.BreakLink(aLinks(i),xlLinkType)
PS
倘若需要批量处理多个工作簿,或需要插件随时在任意工作簿一键运行的话,能够私信我。
OK. 分享完毕。感谢您的关注、点赞、保藏与点评。下期见~
#Excel##excel##Excel技巧##职场excel小技巧##VBA##头条创作挑战赛#
《Excel VBA 从入门到封神系列之进阶篇》:Excel工作簿大瘦身:一键删除外边链接
|