如何在没有屏幕闪烁的情况下逐行构建VBA中的新Word文档

时间:2015-05-12 21:46:40

标签: vba ms-word word-vba

以下代码用于逐行构建新的Word文档,但每次插入一行时屏幕都会闪烁。我基本上生成一个新文档,主要包括我从活动文档中提取的文本片段的排序列表。我有一个程序(比下面更复杂,但具有相同的闪烁问题)产生了良好的结果,但我不想遭受癫痫发作或诱发其他人的癫痫发作。有没有办法自动插入不是活动窗口的文档,或者只显示最终结果而不显示每个步骤?

将整个列表作为一个长字符串变量插入,即使我可以使用换行符插入段落,也不会完全有效,因为我正在构建的实际文档有各种格式更改,自动化Word似乎是最方便的选项。

Sub HelloWorlds()

dim i As Long

Documents.Add DocumentType:=wdNewBlankDocument ' opens and puts cursor in a new doc

For i = 1 to 8

Selection.InsertAfter ("Hello World" & i)
Selection.InsertParagraphAfter

Next i

End Sub 

1 个答案:

答案 0 :(得分:0)

Pupa Rebbe's solution of adding

IDC_BUTTON1

before the "For" loop works, thanks! A cursor flashes a little bit as it is working, but it's nothing like the annoying strobe effect I was getting.