zhangkun90 发表于 2013-6-17 19:39:12

VBS 用adodb链接excel

用adodb链接excel的 查询操作是查询出来了,但是更新语句却错误例子如下
constr= "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & FilePath & ";Extended Properties=""Excel 8.0;HDR=yes;IMEX=2"""
sqlstr="UPDATE SET result='Fail' where TestCaseID='4' "
Set adoconn = CreateObject("adodb.Connection")
        adoconn.Open constr
        Set ConRst = adoconn.Execute(sqlstr)

执行上面语句提示 :标准表达式中数据类型不匹配。

想知道如何才能正确的更改excel表中的数值这个update语句应该怎么写呢   求解答 谢谢!

黑羽祭 发表于 2013-6-19 09:43:49

回复 1# zhangkun90


    用adodb链接excel?
用EOM玩Excel吧

zhangkun90 发表于 2013-6-19 09:55:36

回复 2# 黑羽祭


    嗯哪,我之前用的是EOM+字典对象 来操作excel,那天无意中看到有人用ado进行对excel操作,哈哈突然就好奇 如何进行select和update。 嘿嘿 谢谢解答

zhangkun90 发表于 2013-6-19 09:56:57

回复 1# zhangkun90


    上面那个update语句已经解决,update语句应该字段用“”号来标识,而不是‘’,还有那个IMEX=0 就哦了

黑羽祭 发表于 2013-6-19 11:10:20

嗯~~

joykao 发表于 2013-6-19 14:51:02

这个直接把Excel当数据源来玩啦。。。不错。。。把测试数据全填在excel中也是个不错的idea哇。。。之前玩了个java把excel当数据源。。。

liqiuheng 发表于 2013-6-19 18:50:59

你是怎么改的,我改成你说的

"UPDATE SET result="Fail" where TestCaseID='4' "

还是不行

zhangkun90 发表于 2013-6-20 08:45:40

回复 7# liqiuheng


    testcaseid="4"这个引号呢 需要用 2个““str ””来表示1个引号

zhangkun90 发表于 2013-6-20 08:58:37

回复 6# joykao


    嘿嘿对啊,之前用eom的时候感觉读取速度太慢了,之后配合字典对象搞起,感觉速度挺好的。那天无意中看到一个人的博客,就试了下,哈哈感觉好专业的样子

黑羽祭 发表于 2013-6-20 09:28:56

我喜欢一下子把Excel的数据都读出来,然后处理,放到不同的变量、数组、字典里,不用每次都读Excel。
写Excel用的不多。

zhangkun90 发表于 2013-6-20 16:04:55

回复 10# 黑羽祭


    哦这样啊,也就是说比如说我这个excel的sheet页中有五行的测试用例其中有几个字段是需要进行读取操作的,您的意思是只读一次excel 将独处来的数据每一行定义成一个字典对象,之后在进行循环调用是么,这样的话就是说一个sheet页的用例只会运行一次,大大减少了运行时间是把

黑羽祭 发表于 2013-6-21 09:03:53

回复 11# zhangkun90


    是的,而且我还先定义了数组,再把数组设成字典的用。
所有测试用例,一个字典数组搞定。

zhangkun90 发表于 2013-6-21 13:50:04

回复 12# 黑羽祭


    对奥,嘿嘿 多谢点播,我好想明白了点什么 哈哈哈谢谢哈

黑羽祭 发表于 2013-6-21 14:57:12

回复 13# zhangkun90


    呵呵,看来是有点想法了。
页: [1]
查看完整版本: VBS 用adodb链接excel