在本文中,我们将向您展示一种通过 VBA 自动快速批量验证 Word 文档中所有超链接的方法。
一个 Word 文档可以包含许多超级链接,甚至数百个。 其中,有些是无效链接,无法将您引导至正确的网页。 因此,我们想为您提供一种通过 VBA 快速检查文档中所有链接的方法。
安装并保存 Word 宏
- 首先,用“Alt+F11”打开VBA编辑器。
- 然后单击“正常”项目。
- 接下来单击工具栏菜单上的“插入”选项卡。
- 然后在菜单上选择“模块”。
- 双击模块打开编辑空间并粘贴以下代码:
Function CheckURL(strURL As String) As Boolean
Dim objDemand As Object
Dim varResult As Variant
On Error GoTo ErrorHandler
Set objDemand = CreateObject("WinHttp.WinHttpRequest.5.1")
With objDemand
.Open "GET", strURL, False
.Send
varResult = .StatusText
End With
Set objDemand = Nothing
If varResult = "OK" Then
CheckURL = True
Else
CheckURL = False
End If
ErrorHandler:
End Function
Sub ReturnURLCheck()
Dim objLink As Hyperlink
Dim strLinkText As String
Dim strLinkAddress As String
Dim strResult As String
Dim nInvalidLink As Integer, nTotalLinks As Integer
Dim objDoc As Document
Application.ScreenUpdating = False
Set objDoc = ActiveDocument
nTotalLinks = objDoc.Hyperlinks.Count
nInvalidLink = 0
With objDoc
For Each objLink In .Hyperlinks
strLinkText = objLink.Range.Text
strLinkAddress = objLink.Address
If Not CheckURL(strLinkAddress) Then
nInvalidLink = nInvalidLink + 1
strResult = frmCheckURLs.txtShowResult.Text
frmCheckURLs.txtShowResult.Text = strResult & nInvalidLink & ". Invalid Link Information:" & vbNewLine & _
"Displayed Text: " & strLinkText & vbNewLine & _
"Address: " & strLinkAddress & vbNewLine & vbNewLine
End If
Next objLink
frmCheckURLs.txtTotalLinks.Text = nTotalLinks
frmCheckURLs.txtNumberOfInvalidLinks.Text = nInvalidLink
frmCheckURLs.Show Modal
End With
Application.ScreenUpdating = True
End Sub
Sub HighlightInvalidLinks()
Dim objLink As Hyperlink
Dim strLinkAddress As String
Dim strResult As String
Dim objDoc As Document
Set objDoc = ActiveDocument
With objDoc
For Each objLink In .Hyperlinks
strLinkAddress = objLink.Address
If Not CheckURL(strLinkAddress) Then
objLink.Range.HighlightColorIndex = wdYellow
End If
Next objLink
End With
End Sub
- 接下来点击“保存”。
- 然后为宏分配一个按钮。 您可以参考以下文章了解详细信息:
创建用户表单
使用用户表单,您可以清楚地看到当前文档中的链接总数、无效链接数以及更多详细信息。
- 首先,再次点击工具栏上的“插入”。 但是这一次,选择“UserForm”。
- 接下来按“F4”打开左下角的“属性窗口”。 窗口大小可调。
- 现在将用户表单命名为“frmCheckURLs”。
- 将标题设置为“检查 URL”。
- 然后正确设置字体。
- 接下来单击工具栏上的“工具箱”按钮。
- 现在单击工具箱上的“标签”。 使用鼠标在用户窗体上拖动一个矩形标签。
- 单击标签以激活其属性窗口。 将标签名称设置为“lblInvalidURLs”,将标签标题设置为“Invalid URLs:”。
- 接下来为标签标题文本选择合适的字体和前景色。
- 在工具箱上选择“文本框”并在用户表单上插入一个文本框。 调整它的大小。
- 然后将文本框名称设置为“txtShowResult”。
- 根据需要设置字体和前景色。
- 找到“MultiLine”,并将其设置为“True”。
- 找到“滚动条”并选择一个垂直条。
- 接下来再创建两个标签和文本框。
- 然后将第一个标签命名为“lblTotalLinks”并将标题设置为“本文档中的总链接”。
- 并将第二个标签命名为“lblNumberOfInvalidLinks”并将标题设置为“无效链接数”。
- 将第一个文本框命名为“txtTotalLinks”,将第二个文本框命名为“txtNumberOfInvalidLinks”。
- 然后在工具箱上找到命令按钮控件。 创建两个命令按钮,如下图:
- 将第一个按钮命名为“cmdbtnClose”,其标题文本为“Close”。
- 将第二个按钮命名为“btnCloseAndHighlightInvalidURLs”,其标题文本为“关闭并突出显示无效的 URL”。
- 接下来分别双击“关闭”按钮和“关闭并突出显示无效的 URL”按钮。 输入代码如下:
运行宏
单击您分配给宏的按钮。 下面是最终效果:
您可以在左侧的大文本框中看到有关每个失败链接的详细信息。 您可以选择直接关闭用户表单或在突出显示文档中所有损坏的链接时关闭它。
谨慎处理单词问题
Word 很容易出错。 因此,它变得极其重要 修正字 正确。 米ost 有时,内置工具帮不了你那么大忙。 因此,您的首选是获得第三方修复工具。
作者简介:
Vera Chen 是一位数据恢复专家 DataNumen, Inc.,它是数据恢复技术领域的世界领先者,包括 修复xlsx 和 pdf 修复软件产品。 欲了解更多信息,请访问 datanumen.com









