cloudcloud 发表于 2011-1-13 15:50:55

DataTable从excel中读取数据,excel文件内的列名如何设定

---总结DataTable从excel中读取数据的方法

Option explicit
Dim rowcount'存储数据总行数
Dim filepath'获取excel表格路径
Dim i'循环变量
filepath=pathfinder.Locate("webmail_option_preference_hintSendSuccess.xls")
datatable.Import(filepath)
rowcount=datatable.GetRowCount'统计行数
For i=0to rowcount-1
      datatable.GetCurrentRow '置当前行为活动行
      send=datatable.Value("send")'这里Value("send")中的send为excel中的列名,是在设计测试数据时确定的
      name1=datatable.Value("name1")'同上      
。。。。。。
datatable.SetNextRow'下一行

我在运行该脚本时,到这一行datatable.Value("send")就取不出来了,

因为外部的Excel文件的列名是A,B,C,。。。。不能修改为"send"
就是“webmail_option_preference_hintSendSuccess.xls”的样子是什么样的呢?
或者有其他方式解决这个问题?
而用QTP自己的datatable的方式:DataTable("server", dtLocalSheet) 这样就没问题。

cloudcloud 发表于 2011-1-13 16:13:15

运行时会提示 :
The retrieve DataTable.Value operation failed. The <send> column does not exist.

17800455 发表于 2011-1-13 16:47:56

你都导入到qtp里了   为什么不用qtp本身的
DataTable("server", dtLocalSheet)   还搞的那么麻烦

cloudcloud 发表于 2011-1-14 11:04:38

本帖最后由 cloudcloud 于 2011-1-14 11:06 编辑

我想把数据和脚本分开嘛,其他测试用例只要维护外部的Excel文件就可以了(表头的列名还是需要的);

后来问题解决了,好像dataTable.Value()能够取到的默认是globalsheet的内容。
页: [1]
查看完整版本: DataTable从excel中读取数据,excel文件内的列名如何设定