我试图通过标准调用shell((函数执行批处理文件。 此批处理文件特定于项目,由外部应用程序为每个项目自动创建。主要功能是规范化大约 40 个文件,其中包含用于我的项目的统计数据。此数据正在从 excel 获取。手动执行时,整个过程大约需要 30 秒,并且工作正常。
当我尝试在 VBA 中使用调用 shell 函数访问它时,它只是弹出了大约 2 秒钟,并且输出不是从批处理文件生成的。 我附上下面用于此的示例代码。我只是在 VBA 宏中踩婴儿。请原谅我的编码实践。
Call Shell(Range("L8") & "DSTAT$.BAT")
我也试过这个
`Dim Runcc
Runcc = Shell(Range("L8") & "DSTAT$.BAT", 1)`
如果需要任何进一步的信息来解决这个问题,请告诉我。
尝试
Dim waitOnReturn As Boolean: waitOnReturn = True
Dim windowStyle As Integer: windowStyle = 1
With CreateObject("WScript.Shell")
.Run Range("L8") & "DSTAT$.BAT", windowStyle, waitOnReturn
End With
我用它来将PDF转换为JPG,在Ms-Access中report_open上的Irfanview。
从 vba WScript.Shell 运行.exe带有参数的文件
窃取