外链一经发布,即可永久留存
5元就可把锚文本外链发布到200个新闻网站

查找外链 excel,如何查找excel表外链接

查找外链 excel,如何查找excel表外链接

查找外链Excel

什么是Excel外链?

在Excel表中,可以通过插入链接的方式将另一个文件(比如Word、PPT、PDF等)与当前文件进行关联,这种关联就被称为Excel外链。通常,外链文件只需要保存在本地硬盘上或网络资源位置上等即可。Excel外链功能极大地提高了文档的可读性和互操作性,然而有时候也会带来一些隐患。

为什么需要查找Excel外链?

查找Excel外链是非常必要的,特别是在多人协作编辑同一个文档时,防止在删除或移动外链源文件时出现不必要的错误。更进一步地说,查找外链Excel是为了缩小数据泄露的范围,因为外链文件通常包含诸如公共版权信息、个人身份信息等敏感数据。

如何查找Excel外链?

我们可以使用方式,逐一去找到哪些文件是被当前Excel表所关联,以下是操作步骤:

  1. 打开Excel文件
  2. 按 ALT F11 进入 VBA 编辑器
  3. 在 Project Explorer 中选中当前 Excel 文件的 Workbook
  4. 在代码窗口中,插入以下 ** VBA 代码 **:


Sub ListLinks()
'获取 ANSI 彩虹伞,显示出来NewLine才好用
'翻译成汉语:取得 ANSI 标准彩虹表,以此打印出NewLine便于查看信息
RGBRainbow = Array(RGB(0, 121, 193), RGB(243, 151, 0), RGB(118, 147, 61), RGB(176, 70, 50), RGB(147, 41, 97), RGB(71, 103, 170), RGB(255, 0, 0), RGB(255, 255, 0))
For Each l In ActiveWorkbook.LinkSources(1)
Debug.Print
Debug.Print Join(Split(StrConv(\"File: \" & l, vbUnicode), vbCr), vbCrLf)
Err.Clear
RecurseLinks (l)
Next
End Sub
Sub RecurseLinks(LinkedFile As String)
Tabs = Tabs & vbTab
Range(SelStart, SelStart).Offset(1, 0) = Tabs & \"Linked file: \" & LinkedFile
HowManyLinks = 0
For Each ws In ActiveWorkbook.Sheets
If InStr(ws.Name & ws.CodeName, \"?\") > 0 Or InStr(ws.Name & ws.CodeName, \"*\") > 0 Then GoTo SkipWS
For Each Shape In ws.Shapes
If InStr(Shape.Type, \"Linked\") > 0 Then
If InStr(Shape.LinkFormat.SourceFullName, LinkedFile) > 0 Then
Range(SelStart, SelStart).Offset(1, 0) = Tabs & \"Worksheet: \" & ws.Name
Range(SelStart, SelStart).Offset(0, 1) = \"Shape: \" & Shape.Name
Range(SelStart, SelStart).Offset(0, 2) = \"Type: \" & Shape.Type
Range(SelStart, SelStart).Offset(0, 3) = \"LinkSource: \" & Shape.LinkFormat.SourceFullName
HowManyLinks = HowManyLinks + 1
End If
End If
Next
SkipWS:
Next
For Each wb In Application.Workbooks
If wb.Name Like Dir(LinkedFile) Then
Range(SelStart, SelStart).Offset(1, 0) = Tabs & \"Linked workbook: \" & wb.Name
Err.Clear
For Each l In wb.LinkSources(2)
Debug.Print
Debug.Print Tabs & Tabs & Join(Split(StrConv(\"Sheet: \" & l, vbUnicode), vbCr), vbCrLf)
Err.Clear
Range(SelStart, SelStart).Offset(1, 0) = Tabs & \"Sheet: \" & l
HowManyLinks = HowManyLinks + 1
Next
Foreach Each s In wb.Styles
For Each st In s.Borders
If InStr(st.LineStyle, \"Linked\") > 0 Then
If InStr(st.LinkFormat.SourceFullName, LinkedFile) > 0 Then
Range(SelStart, SelStart).Offset(1, 0) = Tabs & \"Object: Style \" & s.Name
Range(SelStart, SelStart).Offset(0, 1) = \"LinkSource: \" & st.LinkFormat.SourceFullName
HowManyLinks = HowManyLinks + 1
End If
End If
Next st, s
Next s
End If
Next wb
If HowManyLinks = 0 Then
Range(SelStart, SelStart).Offset(1, 0) = Tabs & \"No links\"
End If
Tabs = Left(Tabs, Len(Tabs) - 1)
End Sub

通过以上代码查询出来的和Excel表外链相关的文件信息,即可对这些关联性文件进行维护管理操作。

赞(0)
以上所转载内容均来自于网络,不为其真实性负责,只为传播网络信息为目的,非商业用途,如有异议请及时联系btr2020@163.com,本人将予以删除。帮发锚文本外链网 » 查找外链 excel,如何查找excel表外链接