【问题标题】:BAT working fine manually but generate error by VBA ShellBAT 手动工作正常,但 VBA Shell 生成错误
【发布时间】:2015-03-12 06:21:24
【问题描述】:

我使用 shell 函数运行了一个运行 VBS 脚本的 BAT 文件:

Shell ("C:\USERS\walaraji\Desktop\test1.bat")

BAT 文件命令:

cscript c:\test\pbo.vbs
@pause

BAT 文件通过手动单击可以正常工作,但是当我通过 VBA Shell 调用它时会产生错误

 Error: c:\test\pbo.vbs(7,1) Microsoft VBScript runtime error: Object required

【问题讨论】:

  • 发布(至少)pbo.vbs 的第 7 行。

标签: vba shell batch-file vbscript


【解决方案1】:

“bat”不是可执行文件。为了在 Shell 中使用它,您可以使用 Shell "cscript c:\test\pbo.vbs"Shell "wscript c:\test\pbo.vbs" 直接运行 vbs 文件

【讨论】:

  • 我尝试直接在 Shell 中运行 VBS 但它什么也没做,我将 bat 文件更改为仅打印一条消息(只是为了确保 shell 函数可以在 bat 中执行 dos 命令)一切看起来都很好,消息出现在 cmd 中,但是当我使用 bat 运行 vbs cscript c:\test\pbo.vbs 时出现错误,表明位置 c:\test\pbo.vbs(7,1) 确实不存在,我只是不确定如何以及为什么在位置末尾添加了“(7,1)”?
  • 你能试试运行对话框中的shell代码,看看它是否能顺利运行吗?您是否尝试用 wscript 替换 cscript,还是需要控制台窗口?有关您正在使用的代码行的更多信息会有所帮助。我最后运行了一个基本的 msgbox 代码,它运行良好,但我使用了 wscript
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-20
  • 1970-01-01
  • 2014-02-09
  • 1970-01-01
  • 1970-01-01
  • 2012-03-10
相关资源
最近更新 更多