vbscript通过任务计划程序在Windows 10中打开excel文件

vbscript通过任务计划程序在Windows 10中打开excel文件,vbscript,scheduled-tasks,windows-10,excel.application,Vbscript,Scheduled Tasks,Windows 10,Excel.application,我有一个脚本文件,我正在通过任务调度器执行,它在Windows7中运行良好,但在Windows10中不工作 下面是代码片段: Dim myxlApplication, myWorkBook Set myxlApplication = CreateObject("Excel.Application") myxlApplication.Visible = False Set myWorkBook = myxlApplication.Workbooks.Open( emlAttach ) myxlA

我有一个脚本文件,我正在通过任务调度器执行,它在Windows7中运行良好,但在Windows10中不工作

下面是代码片段:

Dim myxlApplication, myWorkBook

Set myxlApplication = CreateObject("Excel.Application")
myxlApplication.Visible = False
Set myWorkBook = myxlApplication.Workbooks.Open( emlAttach )
myxlApplication.DisplayAlerts = False
myWorkBook.Application.Run "Main.Main" 
myxlApplication.DisplayAlerts = True
myxlApplication.Quit
Set myxlApplication = Nothing
emlatach
在脚本的前面设置为绝对路径和扩展名为的文件名

当通过单击脚本文件执行此操作时,它工作得非常好。当将其作为计划任务运行或强制从任务计划程序运行时,它会询问我要使用什么程序打开文件。如果我选择Excel,它会给我一个错误,告诉我该文件不存在


该错误的文件扩展名是错误的,
xlsx
vs变量
xlsb

从任务计划程序执行.VBS或作为登录脚本(gpedit.msc► 用户配置► Windows设置► 脚本(登录/注销))需要显式引用开销可执行文件。对于基于windows的返回,这将是WSCRIPT.EXE;对于基于控制台的返回,这将是CSCRIPT.EXE。此外,如果.VBS默认与WSCRIPT.EXE关联,则可能需要将CSCRIPT.EXE指定为正在运行的进程,以避免基于windows的返回

CSCRIPT.EXE c:\<path to vbs script file>\myScript.vbs
CSCRIPT.EXE c:\\myScript.vbs

在CMD提示符下测试命令行。如果文件夹名称包含空格,则可能需要将其括在引号中。

命令行是什么?您是显式使用wscript.exe myscript.vbs还是让.vbs扩展隐式记录开销可执行文件?(对于基于控制台的可执行文件,可能必须是cscript.exe)目前,我只是将它直接指向
.vbs
,希望它能工作。我只是使用了cscript,效果非常好。非常感谢你的帮助!如果你想把它写下来作为一个正式的答案,我可以把它标记为你的答案,或者我可以自己写出来,无论你喜欢哪个顺便说一句,我最初的方法,只指向vbs,在Win7中工作,但由于某种原因在Win10中不工作。我不确定发生了什么变化。Win7框可能与CSCRIPT而不是WSCRIPT有VBS文件关联。或者Win7处理窗口输出的方式可能与Win10不同,并且不需要控制台版本;对不起,我知道的不够精确。