我想创建一个宏来搜索 Word 文档中的所有超链接。如果可见文本以 http 开头,那么我想删除该链接(保留文本不变)。
示例:如果我的 Word 文档中有以下 2 个链接,第一个链接将被取消链接,但第二个链接将保留其链接。
我不知道如何从 Field 元素中提取文本值以便进行比较。这就是我的宏当前的样子:
Sub RemoveHyperlinks()
Dim oField As Field
For Each oField In ActiveDocument.Fields
If oField.Type = wdFieldHyperlink Then
'If the text of oField begins with "http" then unlink
oField.Unlink
End If
Next
Set oField = Nothing
End Sub
最佳答案
您可以使用Result
属性获取字段的显示值:
Sub RemoveHyperlinks()
Dim oField As Field
For Each oField In ActiveDocument.Fields
If oField.Type = wdFieldHyperlink Then
If Left(oField.Result, 4) = "http" then
oField.Unlink
End If
End If
Next
Set oField = Nothing
End Sub
关于vba - Word 宏 - 从包含特定文本的所有链接中删除超链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36698336/