【问题标题】:Removing hyperlinks in captions from text从文本中删除标题中的超链接
【发布时间】:2021-08-03 15:00:06
【问题描述】:

我正在尝试删除特定范围内的所有标题(第 4 页直到文档末尾)。
我只想删除超链接而不是文本本身。

例如:
Some text here -> 这里有一些文字
删除超链接标题后。

我试过了:

Sub removeCaptions()

    Dim rgePages As Range

    Selection.GoTo What:=wdGoToPage, Which:=wdGoToAbsolute, Count:=4
    Set rgePages = Selection.Range
    lastPage = ActiveDocument.ActiveWindow.Panes(1).Pages.Count
    Selection.GoTo What:=wdGoToPage, Which:=wdGoToAbsolute, Count:=lastPage
    rgePages.End = Selection.Bookmarks("\Page").Range.End

    With rgePages.Select

        If Range.Style = "Caption" Then
            Range.Delete
        End If

    End With

End Sub

我只得到范围而不删除标题。

【问题讨论】:

  • 字幕本身有超链接是不常见的。使用 Word 中的插入题注工具插入题注时无法做到这一点。超链接必须在事后添加。您是否指的是字幕的超链接?

标签: vba ms-word hyperlink caption


【解决方案1】:

例如:

Sub Demo()
Application.ScreenUpdating = False
With ActiveDocument.Range
  With .Find
    .ClearFormatting
    .Replacement.ClearFormatting
    .Text = ""
    .Replacement.Text = ""
    .Format = True
    .Forward = True
    .Style = wdStyleCaption
    .Wrap = wdFindStop
  End With
  Do While .Find.Execute
    If .Information(wdActiveEndAdjustedPageNumber) > 3 Then .Fields.Unlink
    .Collapse wdCollapseEnd
  Loop
End With
Application.ScreenUpdating = True
End Sub

【讨论】:

  • 它看起来很棒,但是在运行宏之后我注意到超链接没有被删除。 (在第 3 页后检查)
  • 要解决此问题,您需要按 Ctrl + A,然后按 Ctrl + Shift + F9。问题是我想通过宏得到结果。
  • 另外,值得一提的是,大多数链接都引用了文档本身的其他文本。
  • «运行宏后,我注意到超链接尚未被删除» 在第 3 页之后应用了标题样式的段落中没有超链接将在我发布的宏中继续存在。但是,超链接格式不会被删除,因为您没有要求这样做。
猜你喜欢
  • 2011-07-18
  • 2014-07-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-19
  • 1970-01-01
  • 2011-06-19
  • 2011-08-17
相关资源
最近更新 更多