【问题标题】:workbooks.add fails when vbs-script is called from Task Scheduler从任务计划程序调用 vbs 脚本时,workbooks.add 失败
【发布时间】:2021-03-22 12:29:03
【问题描述】:

我在 VBscript 中有一些代码可以创建一个 excel 对象并向其中添加一个工作簿

Dim oExcel, oWB    
Set oExcel = CreateObject("excel.application")
Set oWB = oExcel.Workbooks.Add()

当我自己运行它时(使用 VbsEdit 或 cscript),它没有问题并且可以完成工作。 当我在 Windows 10 任务调度程序(或 Server 2019)中输入条目时,设置“即使用户离线”运行它,它也会失败,错误代码为 -2147023170。当我说用户必须在线(没用,但我还是尝试了)时,我收到错误 1004 - Unknown runtime error。

我不知道是什么原因造成的。我认为这是 Office 365 的问题,因为在较旧的系统(Windows Server 2012 R2 和 Office 2016)上,它从任务计划程序运行得很好。

它运行的帐户是管理员,任务以最高优先级运行。不直接调用 Vbs,而是使用带有日志记录的 bat 文件。直接从任务调度程序运行 vbs 脚本似乎会无限期地陷入“运行”:(

谁知道如何解决这个问题? 谢谢, 保罗

【问题讨论】:

    标签: excel vbscript excel-365


    【解决方案1】:

    去掉Workbooks.Add末尾的括号怎么样?

    Set oWB = oExcel.Workbooks.Add
    

    【讨论】:

    • 这没有任何区别。而且,将批处理文件 (.bat) 切换到 powershell 脚本 (.ps1) 也没有什么不同。这一定是一些权限或安全问题。这种结构在 Windows Server 2012 R2 和 Excel 2016 上运行良好 这是 Windows 10/Windows Server 2019 与不合作的 Office 365 的结合:(
    • 好的,刚刚在我的 VBE 中测试过,两者都可以正常工作。
    猜你喜欢
    • 2019-10-31
    • 1970-01-01
    • 2018-12-02
    • 1970-01-01
    • 2022-06-28
    • 2017-06-20
    • 1970-01-01
    • 1970-01-01
    • 2015-10-02
    相关资源
    最近更新 更多