我是单词互操作的新手。
我有一个文档,仅在表格的开头插入了以下文本。
OAAssistant3 | Table | Header | After | N | T **请勿删除此文本** <> {TN} GRA302
在所有其他页面上,仅插入了{TN}。
我如何查找页面上是否出现了同时带有'OAAssistant3'和{TN}的文本?
此文本'OAAssistant3'是隐藏文本,而{TN}不是隐藏文本。
我已使用以下代码找到{TN} 但是我想搜索页面是否同时具有OAAssistant3和{TN}。
我该怎么办?
Dim tableNameSearchRange As Word.Range = document.WordDocument.Content
With tableNameSearchRange
.TextRetrievalMode.IncludeHiddenText = False
.TextRetrievalMode.IncludeFieldCodes = False
.Find.Text = "\{TN*\}?"
.Find.MatchWildcards = True
.Find.Forward = True
.Find.Wrap = Word.WdFindWrap.wdFindStop
End With
答案 0 :(得分:0)
假设您要替换TN-在此处和在其他线程中的问题描述不清楚-在VBA中,您可以使用以下代码进行此操作:
Sub Demo()
Application.ScreenUpdating = False
Dim i As Long
With ActiveDocument.Range
With .Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "OAAssistant3[!^13\{]@\{TN"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindStop
.Format = False
.MatchWildcards = True
.Execute
End With
Do While .Find.Found
i = i + 1
.Start = .End - 2
.Text = i
.Collapse wdCollapseEnd
.Find.Execute
Loop
End With
Application.ScreenUpdating = True
End Sub
是否将任何文本设置为隐藏格式都不重要。我将它留给您进行.NET转换。