Word VBA - 在 hyperlinks 中格式化和重新 link 脚注和尾注

Word VBA - format and re-link footnotes and endnotes in hyperlinks

我需要在我编写的宏中找到脚注和尾注标记(在正文中,对它们进行格式化并重新link)等,以清理从网络导入的文档。

我的宏工作正常,除了,其中部分查找字符串是 hyperlink 显示文本,部分不是。

搜索 ([a-z])([0-9])(定位正文中的尾注标记,因为它们未被格式化为尾注)找不到它们,因为 [0-9] 是 hyperlink 显示文本和 [a-z] 不是。

  1. 我的问题是:如何搜索 与[hyperlink 显示文本字符串] 相邻的[普通字符串]?
  2. 如果找到,下一步是如何替换 hyperlink 显示文本(格式化尾注上标,删除 para 标记)将其保留在 hyperlink 中(我可以处理) - 也许是另一个问题的主题?)

当然,您可以简单地将超链接转换为上标数字,然后使用任何其他代码将上标数字替换为尾注。

Sub Demo()
Dim h As Long
With ActiveDocument
  For h = .Hyperlinks.Count To 1 Step -1
    With .Hyperlinks(h)
      If IsNumeric(.TextToDisplay) = True Then
        With .Range
          If .Characters.First.Previous Like "[a-z]" Then
            .Fields.Unlink
            .Font.Reset
            .Font.Superscript = True
          End If
        End With
      End If
    End With
  Next
End With
End Sub

根据您的操作,您可以简单地将尾注代码插入到内部 If ... End If 结构中以代替字体操作。