51Testing软件测试论坛

标题: 求助EXCEL文件读取问题 [打印本页]

作者: centurystone    时间: 2008-8-25 14:39
标题: 求助EXCEL文件读取问题
要求打印出文件内两列的数据:在QTP读取EXCEL文件时,传入一个EXCEL文件名,但为什么只打印出第一列的值,而不打印第二列呢?试验了好多次都没看出什么原因。哪位大侠帮看下哈
Public Function ImportFile(byref filePath)
   On error resume next
        datatable.ImportSheet filePath,"Sheet1","Action1"
        Dim dtSheet,dtMp1,dtMp2,dataItem
        Set dtSheet = datatable.GetSheet("Action1")
        For dataItem = 0 to dtSheet.getRowCount
                dtMp1 = datatable("mp","Action1")
                dtMp2 = databale("mpConfirm","Action1")
                msgbox(dtMp1&"*"&dtMp2)'为什么此句只打印dtMp1的值,而不打印dtMp2的值?
     next
     If err <> 0 Then
        Call WriteMsg(logFileNow,"导入EXCEL文件时发生异常:"&"错误码:"&err.number&" 错误描述:"&err.source&" 错误原因:"&err.description)
     End If
作者: fengmingbao    时间: 2008-8-25 15:16
我不知道你的问题出在哪里,我做是可以的.

在我的EXCEL里有两列: couse & score. 把它们导入 Action1, 然后打印.你看看对你有没有用,再做点修该. 我没有加任何错误处理,只有中间过程

DataTable.ImportSheet "C:\TEST.xls", 1, 2

Dim i, x, y


For i = 1 to DataTable.LocalSheet.GetRowCount

DataTable.LocalSheet.SetCurrentRow i

x = DataTable.LocalSheet.GetParameter("Course")
y = DataTable.LocalSheet.GetParameter("Score")

Msgbox (x & ":" & y)

Next
作者: centurystone    时间: 2008-8-25 15:52
标题: 回复 2# 的帖子
OK,你的方法可以解决这个问题。但还是不明白为什么会出现那样的错误
作者: kevin_swpi    时间: 2008-8-26 09:46
原帖由 centurystone 于 2008-8-25 14:39 发表
要求打印出文件内两列的数据:在QTP读取EXCEL文件时,传入一个EXCEL文件名,但为什么只打印出第一列的值,而不打印第二列呢?试验了好多次都没看出什么原因。哪位大侠帮看下哈
Public Function ImportFile(byref fi ...


1. 在msgbox后面加上: datatable.SetNextRow

2. 另外,你这个count的算法应该有问题
Action1中的列名mp,mpConfirm这两个是否是从excel中第一行中取得?
比如excel中是
-------------------------------------
A     |   B            | C       D  ..
-------------------------------------
mp    |  mpConfirm     |
test1 |   test12       |
test2 |   test22       |
...
----------------------------------------
如果是这样的话
你代码中count应该写成count-1

3. 你代码中dtMp2 = databale("mpConfirm","Action1")此行datatable拼写错误
作者: centurystone    时间: 2008-8-26 10:29
标题: 回复 4# 的帖子
Excel文件中有两列,分别是mpConfirm,mp,多谢版主指点,竟然犯了如此低级错误。。。




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2