wslss007 发表于 2008-10-27 17:41:08

这段代码哪里有错?

是套用别人代码来着,一样的代码放别人的QTP里执行没错,放我这里就报错了,而且报了六个错,Look:

http://p12.freep.cn/p.aspx?u=v20_p12_p_0810271732197141_0.jpg

我到底犯了什么愚蠢的错误呢?我用的是QTP9.2,谢谢了啊。红色的是报错的地方。

Set excelObj = CreateObject("Excel.Application") '创建一个对象
xlsUrl = "Z:\1.xlsx"'指定一个已经存在的XSL文件路径
excelObj.workbooks.open(xlsUrl)    '打开EXCEL
Set sheetNew = excelObj.sheets.item(1)'设置将数据放在EXCEL中的那一页上(索引从1开始)
'相关的数据库操作
Dim conn,rs,sql,conset
Set conn = CreateObject("adodb.connection")
set rs = createobject("adodb.recordset")
conset = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=C:\Program Files\Mercury Interactive\QuickTest Professional\samples\flight\app\flight32.mdb"
conn.open conset
sql="select * from orders"
rs.open sql,conn
Dim i
while not rs.eof
    Value1 = rs("Order_Number").value
    Value2 = rs("Customer_Name").value
    sheetNew.cells(i+1,1).value = Value1  '列付值
    sheetNew.cells(i+1,2).value = Value2  '列付值
i = i + 1
    rs.movenext
Wend
excelObj.activeworkbook.saveas "Z:\1.xlsx"  '保存数据
excelObj.quit    '关闭对象
set excelObj = nothing  '清空对象
rs.close    '关闭数据库连接操作
set rs=nothing
conn.close
set conn = nothing

假装不在 发表于 2008-10-27 17:47:04

1,确定在数据库里读出数据与否,Value1 ,Value2是否为空。
2,关于excel的操作,你试试单独把代码拿出来,自己运行下。

TEST_HUAN 发表于 2008-10-27 18:02:12

最简单的方法debug一下.

zte_boy 发表于 2008-10-28 00:08:01

xlsUrl = "Z:\1.xlsx"'指定一个已经存在的XSL文件路径

后缀换成xls试下,也许是office版本问题

[ 本帖最后由 zte_boy 于 2008-10-28 00:10 编辑 ]

wslss007 发表于 2008-10-28 10:33:15

会不会和excel版本有关,我装的是office2007.

wslss007 发表于 2008-10-28 14:49:41

请问和excel的版本有关吗?
页: [1]
查看完整版本: 这段代码哪里有错?