【发布时间】:2019-04-04 16:55:38
【问题描述】:
我正在使用键盘快捷键运行 vbs 文件。尽管代码运行良好,但 vbs 快捷键的问题是,只要您按下键盘快捷键,前台窗口就会失去焦点。 (您可以通过在某处放置一个空的 vbs 文件、该文件的快捷方式(例如开始菜单文件夹)、分配给该快捷方式的键盘快捷方式并按下键盘快捷方式来亲自尝试。)
我发现通过使用 ALT+TAB,我可以让前景窗口重新获得焦点。但是,我无法在 VBA 中重复此功能。显然,ShellObject.SendKeys("%{TAB}") 不起作用...
有没有办法在VBA中实现ALT+TAB的功能?提前致谢。
编辑
与此同时,我改用 AutoIt 看看它是否能让我走得更远。这是我得到的:
ControlFocus("[CLASS:CabinetWClass]", "", "[CLASS:DirectUIHWND]")
我注意到在某些情况下选择资源管理器窗口(即 CabinetWClass)是不够的。这就是为什么我将重点放在实际包含文件/文件夹的控件上。
它工作得很好,但我仍然希望有一个 VBA 解决方案 :)
【问题讨论】:
标签: vba