我正在尝试使用VBA自动从Hyperion中提取数据(我是VBA的新手)。我必须在Sheet 1上选择一个单元格范围,"按" Alt,X,S,R允许它拉取数据,然后转到下一张纸并重复。我遇到的问题是宏运行选项卡并根据需要突出显示单元格,但sendkeys(所有五个实例)在完整宏的末尾而不是在每个步骤之后运行。任何帮助,将不胜感激。宏1-5与不同的工作表名称完全相同。
我目前的代码:
Sub RunAllMacros()
Macro1
Macro2
Macro3
Macro4
Macro5
End Sub
Sub Macro1()
Sheets("Sheet 1").Select
Range("C5:H15").Select
Range("H15").Activate
Selection.ClearContents
Range("A1:H15").Select
Range("H15").Activate
SendKeys ("%"), True
SendKeys ("x"), True
SendKeys ("s"), True
SendKeys ("r"), True
Application.Wait (Now + #12:00:01 AM#)
End Sub
答案 0 :(得分:0)
尝试此修改。
Dim dTILL as double
SendKeys ("%(xsr)"), True
dTill = Now + TimeSerial(0,0,2)
Do While dTILL>Now: DoEvents: Loop
这应该让消息泵能够让外部进程赶上来。