“ ActiveWindow.ScrollIntoView Selection.Range,True”不起作用

时间:2019-03-28 21:46:28

标签: vba scroll view ms-word

在显示宏中的消息框(msgbox)之前,我需要VBA(Word)滚动到文档中的特定位置。

我尝试过:

  • ActiveWindow.ScrollIntoView Selection.Range, True
  • 我在DoEvents通话之前添加了Msgbox。没用。
  • 我添加了一个书签,然后选择了Msgbox
  • 之前的书签。
  • 我在Msgbox之前添加了一个睡眠计时器和其他延迟。没用。
  • 我尝试了Application.Screenrefresh

没有任何效果。 Msgbox始终将光标显示在宏运行之前的位置。

但是,如果我逐步执行VBA编辑器中的代码,则一切正常。只有在我运行代码“直通”时,它才在显示msgbox之前从未观察到ScrollIntoView命令。

(从文档顶部开始) (在第3页上搜索文字;如果找到了……)

ActiveWindow.ScrollIntoView Selection.Range, True
DoEvents
Application.ScreenRefresh
Selection.Bookmarks.Add "Prompt"
Selection.Bookmarks("Prompt").Select
DoEvents
Selection.Range.Select
MsgBox "    TASK:  " & PromptIs & String(2, 13) & "    Click OK below and perform the stated task."

在显示消息框之前,光标应位于找到的文本上,并且文本应在“视图中”。不是。

0 个答案:

没有答案