我正在使用WinXP,我有一个批处理脚本,我在其中确定Excel工作表的文件名,然后通过简单地启动Excel工作表启动它。
问题是Excel当时正在运行。因此,当批处理文件启动Excel工作表时,Excel将发送到前面并打开Excel工作表。但是,焦点仍然在批处理文件运行的DOS框中。
在这种情况下,如何将焦点设置为Excel工作表?
答案 0 :(得分:1)
尝试将文件直接传递给Excel:
excel.exe "C:\Path\To\file.xlsx"
我们使用开放式办公室时无法测试。
编辑:
START /B (excel.exe "C:\Path\To\file.xlsx")
答案 1 :(得分:0)
如果你想关注另一个程序,你可以这样做。
call :focus WindowTitle
exit /b
:focus
setlocal EnableDelayedExpansion
if ["%~1"] equ [""] (
echo Please give the window's title.
exit /b
)
set pr=%~1
set pr=!pr:"=!
echo CreateObject("wscript.shell").appactivate "!pr!" > "%tmp%\focus.vbs"
call "%tmp%\focus.vbs"
del "%tmp%\focus.vbs"
goto :eof
endlocal
我正在使用vbscript来关注应用程序。您需要传递窗口的标题,而不是窗口的名称(whatever.bat)。确保你得到正确的