我有一个包含多行文字的word文档。我想确定哪些行(或段落长于一行)包含字符串“/”并删除那些没有一行的行。
这是我一直在努力实现的一个例子。 If语句显然是目前不起作用的部分,但我一直在解决问题。
Selection.WholeStory
nLines = Selection.Range.ComputeStatistics(Statistic:=wdStatisticParagraphs)
Selection.HomeKey Unit:=wdStory
Do While StartNumber2 < nLines
StartNumber2 = StartNumber2 + 1
Selection.HomeKey Unit:=wdLine
Selection.MoveDown Unit:=wdParagraph, Count:=1, Extend:=wdExtend
If Selection.Text = " / " Then
Selection.MoveDown Unit:=wdLine, Count:=1
Else: Selection.Delete Unit:=wdCharacter, Count:=1
End If
Loop
这是它要检查的文本示例。我需要它来删除2&amp; 4并留下1&amp; 3:
任何帮助都将不胜感激。
答案 0 :(得分:1)
感谢共产国际。 我认为会有一种简单的方法,InStr就能完成这项任务。
Selection.WholeStory
nLines = Selection.Range.ComputeStatistics(Statistic:=wdStatisticParagraphs)
Selection.HomeKey Unit:=wdStory
Do While StartNumber2 < nLines
StartNumber2 = StartNumber2 + 1
Selection.HomeKey Unit:=wdLine
Selection.MoveDown Unit:=wdParagraph, Count:=1, Extend:=wdExtend
If InStr(Selection, " / ") > 0 Then
Selection.MoveDown Unit:=wdLine, Count:=1
Else: Selection.Delete Unit:=wdCharacter, Count:=1
End If
Loop