ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > Excel VBA > 如何利用vba代码创建计划任务定时打开指定excel文件?

如何利用vba代码创建计划任务定时打开指定excel文件?

作者:绿色风 分类: 时间:2022-08-17 浏览:108
楼主
kevinchengcw
Q: 如何利用vba代码创建计划任务定时打开指定excel文件?
A: 代码如下:
  1. Sub test()
  2. Shell Environ("comspec") & " /c at " & Format(Now + TimeValue("00:05:00"), "hh:mm") & "/interactive """ & Application.Path & "\excel.exe"" """ & ThisWorkbook.Path & "\test.xls""", vbHide  '利用shell命令通过命令行隐藏执行at命令设置一次性计划任务,在五分钟后打开当前文档目录下的test.xls工作簿
  3. End Sub
environ("comspec")获取命令行命令程序路径,通过后面的/c参数模拟命令行输入后方命令
本例执行内容为
at 某时:某分 /与当前用户交互执行 excel主程序全路径 要打开的工作簿全路径
可以在立即窗口通过?命令来查询得到的结果字符串,如在立即窗口输入:
?Environ("comspec") & " /c at " & Format(Now + TimeValue("00:05:00"), "hh:mm") & "/interactive """ & Application.Path & "\excel.exe"" """ & ThisWorkbook.Path & "\test.xls"""
你会得到整个命令字符串的实际内容

附:at命令的命令行帮助

注意上面的红色字体部分,利用shell命令运行的命令属system权限,故不加上/interactive参数会默认以系统方式运行,此时程序为隐藏界面在后台由系统执行,加上该参数后才可以显示出来与用户进行交互操作。这也是多数人利用at命令在非命令行时生成计划任务感觉失败的原因,其实有执行,但是用户看不到界面。

详见附件及素材源帖。
利用计划任务定时打开工作簿.rar



该帖已经同步到 kevinchengcw的微博
2楼
亡者天下
学习一下

谢谢分享
3楼
水星钓鱼
这个牛的

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap