如何在 VBScript 中使用 Excel 工作表函数?

How to use Excel worksheet functions in VBScript?

我需要计算 Excel 的 A 列中活动单元格的数量。
我可以在 Excel VBA 中使用 'worksheetfunction.countA' 轻松实现此目的,但无法在 VBScript 中获得相同的效果。

我试过以下代码:

Dim objXl , objWorkbook, objSheet ,numofactivecells

Set objXl = createobject("Excel.Application")

set objWorkbook= objXl.Workbooks.open("C:\Users\Username\Desktop\filename.xlsm")
'change filename

set objSheet = objWorkbook.Worksheets(1)

objXl.visible = true

objsheet.cells(1,1).select

numofactivecells = objsheet.WorksheetFunction.CountA(Range("A:A"))

msgbox numofactivecells

我需要包含存储在变量中的列 A 中数据的单元格计数。

我在执行代码时收到以下错误消息:

Microsoft VBScript compilation error: Expected identifier

Microsoft VBScript compilation error: Expected ')'

几个错误:

  1. WorksheetFunctionExcel.Application对象的方法,不是Worksheet
  2. Range不能单独使用,是Worksheet对象的方法

下面是可用的代码:

Dim objXl
Dim objWorkbook
Dim objSheet
Dim iActiveCells

Set objXl = CreateObject("Excel.Application")
Set objWorkbook = objXl.Workbooks.open("C:\Temp\test2.xlsx") 'change filename
Set objSheet = objWorkbook.Worksheets(1)

objXl.Visible = True

With objSheet
    .Cells(1, 1).Select
    iActiveCells = objXl.WorksheetFunction.CountA(.Range("A:A"))
End With

MsgBox iActiveCells