最小化时无法生成活动的Excel窗口

时间:2015-01-05 14:02:01

标签: excel vbscript

我的部分代码是: 设置objShell = CreateObject(“WScript.Shell”) objShell.AppActivate(“Book1 - Excel”) 现在我已经在桌面上打开了一些应用程序,当Excel落后于其他应用程序时,这部分使其窗口处于活动状态。但是,如果我最小化excel并运行此部分,它不会恢复它。 有什么想法吗?

2 个答案:

答案 0 :(得分:1)

完全放弃这种方法。 SendKeys是一种非常非常糟糕的自动化方式,不应该使用它。如果需要自动化MS Office应用程序,请使用相应的COM对象:

Set xl = CreateObject("Excel.Application")
xl.Visible = True
Set wb = xl.Workbooks.Add

...

wb.Close
xl.Quit

答案 1 :(得分:0)

试试这个。它对我来说很好。

Set objShell = CreateObject("WScript.Shell")
objShell.AppActivate("Book1 - Excel") 
WScript.Sleep 500   'sleep is required here to make this work
objShell.SendKeys "% x" ' to maximize