如何将excel数据导入QTP的DataTable的方法
filePath="D:\lery work file\ForLeryTest\userHaveOrderPrice.xls" ’首先将要导入DataTable的excel路径找到Datatable.ImportSheet filePath,"userHaveOrderCompany","Price" ’开始导入,ImportSheet后面的三个参数分别是该excel的路 径,,"userHaveOrderCompany"是该excel中将要导入的某个sheet名字,"Price"是DataTable中的sheet名字,意味着将“userHaveOrderCompany”sheet中的数据装载到DataTable的"Price"sheet中
rcount=DataTable.GetSheet("Price").GetRowCount ’GetRowCount方法获得当前sheet的行数
For i=0 to rcount '用一个循环将该sheet中名为"SKU”的列所有数据读出来,其中GetSheet(2)方法中的参数可以是sheet name 或者是sheet Index
datatable.SetCurrentRow(i+1)
itemContent=DataTable.GetSheet(2).getparameter("SKU").value
'也可以写成:itemContent=DataTable.value("SKU",2)
msgbox itemContent
Next
[ 本帖最后由 lery 于 2010-1-29 14:19 编辑 ] 我按照你的方法来做,还是不行啊。出现找不到“price”这列:L 当然找不到PRICE这行。你看这段代码
datatable.SetCurrentRow(i+1)
itemContent=DataTable.GetSheet(2).getparameter("SKU").value
'也可以写成:itemContent=DataTable.value("SKU",2)
msgbox itemContent
Next
楼主只是做示范而已 中间过程是把excel里的值显示出来了,可运行结束以后datatable里还是没有数据,有办法解决这个问题吗? 关于ImportSheet方法:
Imports a sheet of a specified file to a specified sheet in the run-time Data Table
注意是run-time Data Table importSheet 这个方法的第三个参数是待导入的DataTable的名称或索引,所以需要确保你的脚本中含有对应的DataTable
虽然导入的数据是临时存在的,脚本运行完后会自动从DataTable中消失,但运行结果报告中会有导入的DataTable的对应数据可以查阅 DataTable.ImportSheet("C:\123.xls","exsheet","Action1")
dataTable.Import("C:\123.xls") 有没有方法是能直接在action表中看到数据的,而不是在result中才能看到? import导入后,可以用wait语句,设置断点,可以查看有没有导入数据 回复 8# qtlang
只有在运行的过程中才会导入数据 , 导进去没有数据呀,怎么让它有数据呢 filePath="G:\datatable.xls"
Datatable.ImportSheet filePath,"datatable","username"
rcount=DataTable.GetSheet("username").GetRowCount
For i=0 to rcount
datatable.SetCurrentRow(i+1)
itemContent=DataTable.GetSheet(1).getparameter("username").value
'也可以写成:itemContent=DataTable.value("SKU",2)
msgbox itemContent
Next
为什么老是报The DataTable.GetSheet operation failed. The username sheet does not exist.
Line (11): "rcount=DataTable.GetSheet("username").GetRowCount". 和The Sheet.GetParameter operation failed. The <username> column does not exist.
Line (18): "itemContent=DataTable.GetSheet(1).getparameter("username").value".这个错误 username password
ddd 123
sss 232
swfe 234
sfw 123
这是EXCEl表格 额~还是要试试才知道! 出错啊出错! 晕,将GetSheet(2)里面的2改成1就是好的。:L 回复 4# hadywei
这是QTP的运行机制,QTP执行的过程中导入数据,是run time的datatable. 回复 12# 936586303
DataTable.ImportSheet(FileName, SheetSource, SheetDest)
FileName: The full or relative path of the Excel table from which you want to import a sheet. It can be a file system or Quality Center path.
SheetSource:The name or index of the sheet in the file that you want to import. Index values begin with 1.
SheetDest:The name or index of the sheet in the Data Table that you want to replace with the SheetSource. Index values begin with 1.
要仔细去看QTP的帮助文档。 回复 12# 936586303
请问,你这个问题最后怎么解决的?原因找到了吗?我也遇到过同样的问题。。。 学习下
页:
[1]
2