任务计划程序设置为"运行用户是否登录时"VBA失败

Fra*_*ruz 3 ms-access vba scheduled-tasks taskscheduler ms-access-2016

我有一个Access VBA宏,它生成一个报告,将其保存在.pdf中,然后使用CDO通过电子邮件发送.如果我手动运行它或者如果我将它设置为在任务计划程序上运行安全选项"仅在用户登录时运行",则一切正常.但是,如果我将选项设置为"运行用户是否登录"(即使使用"以最高权限运行"选项),程序在第二行崩溃:

strFileFullPath = CurrentProject.Path & "\Test Report.pdf" DoCmd.OutputTo acOutputReport, strReportName, acFormatPDF, strFileFullPath

有错误

Microsoft Access无法将输出数据保存到您选择的文件.

我很确定这是因为宏在后台与其他用户一起运行.我一直在寻找一个解决方案,但我发现它是不可能的,我应该改变其他打印方法,例如PDF Creator(这带来了很多其他问题).

我在Windows Server 2012 R2 Standard中使用Access 2016.

Fra*_*ruz 10

这听起来很疯狂,但几天后没有结果,我设法通过创建这两个空文件夹来解决我的问题:

  • C:\ WINDOWS\system32 \设置\ systemprofile \桌面
  • C:\ WINDOWS\Syswow64资料\ CONFIG\systemprofile \桌面

Faye对本页底部评论的所有信用:https://blogs.technet.microsoft.com/askperf/2015/02/18/help-my-scheduled-task-does-not-run/

虽然评论关于Excel,但它解决了我在Access上的问题.看起来这与Office在非交互模式下运行某些进程(在我的情况下是pdf生成)有困难(这是"运行是否用户登录时"运行时任务计划程序运行的模式) .