将VBA代码转换为Vbscript

Ano*_*oop 1 vbscript

我在宏中使用以下代码删除excel中的空行.你可以帮我把它转换成Vbscript吗?

Columns("A:A").Select
   Selection.SpecialCells(xlCellTypeBlanks).Select
   Selection.EntireRow.Delete
Run Code Online (Sandbox Code Playgroud)

等待你的宝贵回应.

Ans*_*ers 5

VBScript不提供像VBA运行时环境那样的隐式父对象,因此您需要将所有内容都显式化:

Set xl = CreateObject("Excel.Application")
Set wb = xl.Workbooks.Add
Set ws = wb.Sheets(1)

ws.Columns("A:A").Select
...
Run Code Online (Sandbox Code Playgroud)

此外,VBScript无法识别VBA命名常量,因此您需要使用数值:

...
xl.Selection.SpecialCells(4).Select
...
Run Code Online (Sandbox Code Playgroud)

或者在脚本中定义常量:

Const xlCellTypeBlanks = 4
...
xl.Selection.SpecialCells(xlCellTypeBlanks).Select
...
Run Code Online (Sandbox Code Playgroud)

有关将VBA转换为VBScript的更多信息,请参见此处.