是否可以在需要时从 VBA 代码调用 .vbs 脚本?如果可能的话,你能给我一个如何做到这一点的示例代码吗?
问问题
48502 次
4 回答
25
要运行文件:
Shell "wscript c:\null\a.vbs", vbNormalFocus
如果 VBS 想要使用控制台,请替换wscript
为。cscript
或者您可以添加对Microsoft 脚本控件的引用并直接与 VBScript 运行时交互以执行 VBS 代码、程序等;
Dim scr As ScriptControl: Set scr = New ScriptControl
scr.Language = "VBScript"
scr.AddCode "sub T: msgbox ""All Hail Cthulhu"": end sub"
scr.Run "T"
于 2012-10-30T11:13:23.167 回答
10
我只想添加到亚历克斯的答案,在某些环境中,必须以下列方式创建对象:
set scr = CreateObject("MSScriptControl.ScriptControl")
如果亚历克斯将此添加到他的答案中,我将删除这个。
于 2014-08-28T15:10:34.390 回答
0
尝试这样的事情
ChDir ThisWorkbook.Path
Shell "wscript " & ThisWorkbook.Path & "\your.vbs", vbNormalFocus
它帮助了我。
于 2016-10-15T08:03:59.520 回答
0
"""
如果您的路径名包含对我来说,您可能想要使用-
以下解决了这个问题:
Shell "cscript """ & ActiveWorkbook.Path & """\your.vbs", vbNormalFocus
于 2019-04-25T07:53:23.067 回答