获取“无效的过程调用参数”当我运行时,从子例程中调用Bat文件

时间:2018-10-22 07:48:35

标签: excel vba excel-vba batch-file procedure

enter image description here

找到以下代码:

Sub Button1_Click()
   argh = Shell("C:\Users\YYYY\Desktop\test1.bat", vbNormalNoFocus)
End Sub

当我从子程序中调用Bat文件时,总是出现以下错误。还要附上屏幕截图。

  

“运行时错误”
  “无效的过程调用或参数”

1 个答案:

答案 0 :(得分:1)

我们无法从Excel宏运行.bat文件,它将始终要求管理员权限。

更好地创建.vbs文件,然后从.vbs文件中调用.bat文件。

.vbs文件:将文件另存为runbatch.vbs

Set objShell = CreateObject("WScript.Shell")
objShell.run "C:\Users\YYYYYY\Desktop\test1.bat"
WScript.Quit

宏代码:在Excel VB编辑器中编写以下代码

Sub Button1_Click()
    shell "wscript C:\Users\YYYYYY\Desktop\runbatch.vbs", 
    vbNormalFocus
End Sub