我正在使用键盘快捷方式运行vbs文件。尽管代码运行良好,但vbs快捷键的问题在于,只要按下键盘快捷键,前景中的窗口就会失去焦点。 (您可以通过在某处放置一个空的vbs文件来尝试,例如在开始菜单文件夹中的文件快捷方式,分配给该快捷方式的键盘快捷方式以及按下快捷键。)将下一个窗口设置为活动窗口(ALT + TAB)
我发现通过使用ALT + TAB,我可以得到前景窗口重新获得焦点。但是,我无法在VBA中重复此功能。显然,ShellObject.SendKeys("%{TAB}")
不起作用...
有什么办法来实现VBA中ALT + TAB的功能吗?提前致谢。
编辑
在此期间,我做了一个开关,AutoIt的,看它是否可以让我进一步。这是我的了:
ControlFocus("[CLASS:CabinetWClass]", "", "[CLASS:DirectUIHWND]")
我注意到,选择资源管理器窗口(即CabinetWClass),在某些情况下是不够的。这就是为什么我将重点放在实际包含文件/文件夹的控件上。
它的工作非常好,但我仍然希望有一个VBA解决方案:)
非常感谢!这解决了vba中的问题。可能仍然使用了AutoIt虽然:P – Daan
不用担心,谢谢你把AutoIt的在我的雷达。 10年来,甚至没有想过这种自动化! – CuberChase