首页 文章

未登录时Excel不会启动

提问于
浏览
2

这是我想要实现的事件的连续性:计划任务 - 每天在同一时间运行并启动VBScript VBScript启动Excel工作簿并运行宏 . 这是片段 -

Set xlApp = CreateObject ("Excel.Application")
xlApp.Visible = False
Set xlBook = xlApp.Workbooks.Open (xlFilePath,0,False)
xlApp.Run "Main"

现在问题是如果我手动运行任务,它运行正常 . 当我没有登录到服务器时运行计划任务时,它不会启动excel . 当没有用户登录时,我需要在上面的代码中更改以启动excel?我已将Excel宏安全性设置为低 .

Excel 2003和Windows Server2003 64

3 回答

  • 0

    看一下MS Knowledge Base - 据此,Office应用程序需要运行UI .

    因此,尝试使用除系统用户之外的任何用户:

    例如,由SYSTEM帐户下的任务计划程序启动的代码在与“服务器端”ASP代码或DCOM代码相同的环境中运行 . 因此,可能会出现本文介绍的许多问题 .

    另外,尝试从Excel文件中的Workbook_Open事件调用 Main 而不是 xlApp.Run "Main" ...

  • 4

    不确定它是否已经解决,但我遇到了问题并通过以下步骤解决了 .

    创建以下文件夹

    (32位,总是)C:\ Windows \ System32 \ config \ systemprofile \ Desktop

    (64位)上面的文件夹和C:\ Windows \ SysWOW64 \ config \ systemprofile \ Desktop

    如果您使用系统帐户运行,这将解决此问题 .

  • 1

    您应该能够在运行任务时设置选项以使用用户名,并且无论用户是否登录,都可以运行任务 . 以下是Windows Server 2008的一个示例:

    enter image description here

相关问题