千里之行始如足下,我们最重要的是脚踏实地的去做去积累

QTP操作Excel的一个错误:"Excel 无法打开文件......"

上一篇 / 下一篇  2009-07-31 17:19:01 / 个人分类:功能自动化测试

查看( 2919 ) / 评论( 6 )
测试框架很大的情况下,一个小错误都可能花掉你几个小时的时间去找问题,今天我就遇到了,大家如果以后遇到可以少花点时间了,在一些函数中创建了SQL链接,函数中又调用
/w;y9[8w.l T0
5G;n ^l/J@ u xa0其他函数,其他函数又需要打开些文件进行操作,结果一直报错,一步步跟踪调试找到了原因,EXCEL重复打开不会出错、重复创建链接也不51Testing软件测试网G2H y#T:wo2U~ I
51Testing软件测试网Km+e1H b]+sY
会出错,但如果创建了链接没释放又要打开此文件就会报错。
xU'r.kV&~#^_051Testing软件测试网-nA0[$h8LPji
先看一段代码:51Testing软件测试网+e }!h$P!E3M6Fd FG
'赋值51Testing软件测试网%lJzgT0]0]5U1Y~:qw
ExcelFileFullName = "C:\test.xlsx"
qgE-cC;c+H7m0sheet = "test"
7K/nbW)H0'创建链接
%K"I@_h&I0Set RTCconn= createobject("ADODB.Connection")51Testing软件测试网 kkP"\k6l/ik \II
RTCconn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="&ExcelFileFullName&";Extended Properties=Excel 8.0"51Testing软件测试网$ou6dz(tv)]r4j O
sql= "SELECT * FROM ["&sheet&"$]"&""51Testing软件测试网2o2Og8mH^5L$f
Set RecSet = RTCconn.Execute(sql)51Testing软件测试网,@r W-b)?^m
'打开EXCEL文件
*ov5M|9W[0Set bjExcel = CreateObject("Excel.Application")51Testing软件测试网}l iF ^nj8u~n
Set fExcel = objExcel.Workbooks.Open(ExcelFileFullName)
nd s(]?rj051Testing软件测试网&P2Rbl"R4a4q e
运行此段代码会报错,错误内容为“Excel 无法打开文件“test.xlsx”,因为文件格式或文件扩展名无效。请确定文件未损坏,并且文件扩展
0yX X&a*M0rK051Testing软件测试网4`/J/T!I%rX
名与文件的格式匹配。”51Testing软件测试网vB$A4um't`

rA0H8Z#{9C"o2`0此错误的原因是因为我们创建了SQL链接但没有释放,接下来又需要打开此EXCEL表格,而此EXCEL表格在创建了SQL链接后就被锁住了,再打开
'\7~-V-z6U'd^qih%J051Testing软件测试网jFQI/DT
就会报错,解决些问题的办法是要在打开EXCEL新把链接先关掉(RTCconn.Close)。

TAG:

cherryqxh的个人空间 cherryqxh 发布于2009-08-04 11:53:34
受教了,楼主啥时候发布你那强大的框架呀,我可是天天都来蹲点哦
wshyzhywx的个人空间 wshyzhywx 发布于2009-08-04 13:57:38
遇到过这个问题 初始化下Excel也可以解决的
vernzhang1980发布于2009-08-04 15:18:17
test.xlsx? xlsx?
萧萧枫林的个人空间 onlonely 发布于2009-08-28 14:19:45
呵呵,我也发现了这个现象,中国软件测试人的精神家园,介绍先进的软件测试工具、 软件测试流程和软件测试思想,定期举办软件测试沙龙,软件测试精品 资料下载,提供专业的软件测试培训服务z
e/{|)A9Ur}v

重复打开(不关闭)就会报错.
whoamiyaya的学习天地 whoamiyaya 发布于2009-08-28 21:55:48
哈,学习了,谢谢lz
kaidong12发布于2009-09-05 00:35:08
楼主习惯不好,用完一个对象之后释放内存或者句柄是常识
我来说两句

(可选)

Robel.Yi

Robel.Yi

涉足测试这个行业快6个年头了,自动化也搞了四五年了,记得从最初的一片茫然慢慢的走到现在,艰辛曲折也不少,慢慢理解到了一句话,做十个六十分不如只做一个一百分。

日历

« 2024-04-22  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 34827
  • 日志数: 23
  • 文件数: 1
  • 建立时间: 2008-10-24
  • 更新时间: 2012-03-26

RSS订阅

Open Toolbar