如何将.bas文件转换为vbscript/exe或从命令行运行? 我通过 MS Visual Basic for Aplications 在 Excel 中编写了脚本,但我只能在 Excel 下运行此脚本。我如何将此脚本制作为 .vbs 或 .exe ? ?
最佳答案
我认为最简单的选择是保存带有 .vbs
扩展名的 .bas
文件并将代码修改为 VBScript;然后在 Windows 脚本宿主 (WSH) 下运行它。请记住,在 Excel 下的 VBA 中,您可以访问许多内置对象;在 WSH 下的 VBScript 中,您必须使用 CreateObject
或 GetObject
函数自行创建或访问这些对象(请参阅 this answer )。 (WSH 有自己的一组内置对象。)对于 Excel,您需要从以下开始:
Dim xlApp
Set xlApp = CreateObject("Excel.Application")
请记住,在 VBScript 中,变量没有类型,因此所有语句如:
Dim i As Integer
Dim wks As Excel.Worksheet
需要删除 As
子句:
Dim i
Dim wks
<小时/>
有关两者之间差异的确切详细信息,请参阅 INFO: Visual Basic for Applications Features Not in VBScript和 INFO: VBScript Features Not in Visual Basic for Applications 。
<小时/>
VBA 有一个内置的 IDE 和调试器,在 WSH 下运行代码时没有这些,但您可以使用 Visual Sudio 来调试脚本文件。 (如果您无法安装 VS 2015 Community Edition,Visual Studio 集成 shell 也可以工作 - 2013 、 2012 、 2010 。
通过从命令行调用脚本来调试脚本,如下所示:
cscript yourscript.vbs //D //X
或者:
wscript yourscript.vbs //D //X
如果您安装了Office 2007或更早版本,则可以使用Microsoft脚本编辑器进行调试;无需下载安装VS。尽管如此,VS 比 Microsoft 脚本编辑器和 VBA 调试器都强大得多。
关于excel:如何将 .bas 文件转换为 vbscript/exe 或从命令行运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13800794/