在Word VBA中设置特定条件替换文本

问题描述 投票:0回答:1

我正在尝试创建一个宏来替换具有特定条件的一段文本。

例如:

如果它显示在文档“Summary nº 123”中,则保持文本原样,

但如果显示“Summary 321”而文本中没有“”,我希望宏在“Summary”和321(Summary n° 321)之间添加“n°”,同时保留所有“Summary”后跟n°保持不变且不重复(摘要编号 123)。

我已经尝试使用通配符但无济于事。也许我没有使用正确的通配符组合,但我不知道如何解决问题。

vba string replace ms-word macros
1个回答
0
投票

试试这个:(假设“Summary”和数字或 № 符号之间只有一个空格。

Sub numer()
Set rng = ActiveDocument.Content
With rng.Find
  .Text = "Summary"
  Do
    .Execute
     If .Found Then
       rng.Select
       Selection.Move wdCharacter, 2
       If AscW(Selection) = &H2116 Then
       Else
         Selection.InsertAfter ChrW(&H2116) & " "
       End If
     End If
  Loop While .Found
End With
End Sub

© www.soinside.com 2019 - 2024. All rights reserved.