【发布时间】:2019-02-28 09:47:31
【问题描述】:
我想查找缩进 8 个空格的文档中的所有文本。下面的代码应该找到这些行并选择该行以供以后处理。但是,代码无条件地查找/选择所有行。出了什么问题?
我必须在每次匹配后重置查找结果吗?怎么做的?
Sub findAndSelectIntendedlines()
Dim matched As Boolean
With ActiveDocument.Content.Find
.ClearFormatting
.Forward = True
.Execute findtext:="^p ", Forward:=True, Format:=False, Wrap:=wdFindStop
matched = .Found
End With
If matched Then
Selection.MoveDown Unit:=wdLine, Count:=1
Selection.Find.Parent.Expand Unit:=wdLine
Selection.Find.Parent.Copy
'Debug.Print Selection
Else
Debug.Print "not matched"
End If
End Sub
【问题讨论】:
-
新段落不会被第一行标尺边距“缩进”还是更简单地使用一个或多个制表符?使用8个空格开始新段落的.docx的来源是什么?
-
输入是纯文本文件。改变问题/问题通常不是解决方案/答案?
-
那我就把它当作一个文本文件。您可以将其作为流打开并查找 vbCRLF & Space(8)。
-
仍然是改变问题,也就是为不同/改变的问题提供解决方案。我将纯文本导入word。随后,日志文本将由单独的颜色格式化。这个丰富的wordtext随后将在word中使用,并将保存为DOCX。我正在 DOCX word 文档中寻找一个非常基本的 vba 解决方案。
标签: vba ms-word text-manipulation