Vba Word宏-从包含特定文本的所有链接中删除超链接

Vba Word宏-从包含特定文本的所有链接中删除超链接,vba,ms-word,Vba,Ms Word,我想创建一个宏来搜索Word文档中的所有超链接。如果可见文本以http开头,那么我想删除链接(保持文本原样) 示例:如果以下两个链接位于我的word文档中,则第一个链接将被取消链接,但第二个链接将保留其链接 我不知道如何从Field元素中提取文本值以便比较。这就是我的宏当前的样子: Sub RemoveHyperlinks() Dim oField As Field For Each oField In ActiveDocument.Fields If oField.Type

我想创建一个宏来搜索Word文档中的所有超链接。如果可见文本以http开头,那么我想删除链接(保持文本原样)

示例:如果以下两个链接位于我的word文档中,则第一个链接将被取消链接,但第二个链接将保留其链接

我不知道如何从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