Application.SendKeys "({1068})"不能与 Application.OnTime 一起使用



我正试图通过应用程序按计划获取宏。OnTime如下(位于本工作簿中(:

Private Sub Workbook_Open()        
Application.OnTime TimeValue("15:50:02"), "CopyScreen"                 
End Sub                 

而";CopyScreen;sub如下(位于常规模块中(:

Sub CopyScreen()
Application.SendKeys "({1068})", True          
DoEvents             
ActiveSheet.Paste             
End Sub               

当从手动提示(F5(调用CopyScreen((模块时,它工作得很好,但每当通过计划的Workbook_Open((子调用它时,就会复制一个黑色屏幕截图。有什么想法吗?

我让它使用以下代码:

Sub CopyScreen()
Dim sht As Worksheet
Set sht = ActiveSheet

Application.SendKeys "({1068})", True
DoEvents
With sht
.Activate
.Paste
End With 'sht

显然,Excel在等待设定时间进入睡眠状态时会忘记ActiveSheet。想想看吧

HTH-

结束子

最新更新