作者:fuvogsda99363818 | 来源:互联网 | 2023-05-26 19:21
我尝试在UFT中创建对象:
Dim xlApp
Dim xlBook
Dim xlSheet
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open("C:\1.xls")
Set xlSheet = xlBook.Sheets(1)
创建失败,语法错误
The test run cannot continue due to a syntax error.
Syntax error
Line (242): Set xlApp = CreateObject("Excel.Application")
有人知道怎么修理吗?谢谢您的帮助
1> TheBlastOne..:
根据你的评论,你使用的是:
Class MyClass
Dim xlApp
Dim xlBook
Dim xlSheet
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open("C:\1.xls")
Set xlSheet = xlBook.Sheets(1)
End Class
然后,您在xlApp分配中收到语法错误.
这是正确的,因为该范围内的赋值无效(根本没有可调用的范围).
首先,设置option explicit on
.
然后,确保使用定义所有实例变量Dim
.
另外,创建一个构造函数,或者在下面的示例中,创建一个callable Sub
,它初始化实例变量,如下所示:
Option Explicit
Class MyClass
Dim xlApp
Dim xlBook
Dim xlSheet
Public Function SetParam ()
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open("C:\1.xls")
Set xlSheet = xlBook.Sheets(1)
End Function
End Class
这不会产生语法错误,可能更接近您的意图.
这是因为在Class
... End Class
构造中,除了定义之外你不能有任何其他东西.没有陈述.作业是陈述.(=
Vbscript不支持在变量定义中使用" " 初始化.)