Calling a .vbs script from Excel VBA
是否可以在需要时从 VBA 代码调用 .vbs 脚本?如果可能的话,你能给我一个示例代码吗?
运行文件:
1 2 | Shell"wscript c:\ ull\\a.vbs", vbNormalFocus |
如果 VBS 想要使用控制台,将
或者您可以添加对 Microsoft 脚本控件的引用并直接与 VBScript 运行时交互以执行 VBS 代码、程序等;
1 2 3 4 | Dim scr As ScriptControl: Set scr = New ScriptControl scr.Language ="VBScript" scr.AddCode"sub T: msgbox""All Hail Cthulhu"": end sub" scr.Run"T" |
我只想添加到 Alex\\' 的答案,即在某些环境中,对象必须按以下方式创建:
1 | set scr = CreateObject("MSScriptControl.ScriptControl") |
如果亚历克斯在他的答案中添加了这个,我会删除这个。
如果您的路径名包含
1 | Shell"cscript""" & ActiveWorkbook.Path &"""\\your.vbs", vbNormalFocus |
试试这样的
1 2 | ChDir ThisWorkbook.Path Shell"wscript" & ThisWorkbook.Path &"\\your.vbs", vbNormalFocus |
它帮助了我。