在UFT(QTP)中,引用外部的Excel文件作为它的datatable,但是结果只执行第一行数据,是为什么?
file-setting-resouce里面设置过了,actioncallpropertity里面也设了,就是不知道问题出在哪里,求大神帮忙...
file-setting-resouce 里面设置过了, action call propertity里面也设了,就是不知道问题出在哪里,求大神帮忙
展开
展开全部
将excel做为外部数据参数化时,需要自己写循环吧。
Dim filePath,sheetName '定义参数数据文件的路径
Dim sheetRows,sheetColumns '定义行数和列数
Dim excelBook,myExcelBook,myExcelSheet
filePath = Parameter("excelBook")
sheetName = Parameter("excelSheet")
Set excelBook = CreateObject("Excel.Application")
Set myExcelBook = excelBook.Workbooks.Open(filePath)
Set myExcelSheet = myExcelBook.Worksheets(sheetName)
sheetRows = myExcelSheet.UsedRange.Rows.Count '获取行数
sheetColumns = myExcelSheet.UsedRange.Columns.Count
Dim data() '定义数组读取单元格值
Redim data(sheetRows,sheetColumns) '重新定义数组
Dim i,j '定义循环变量
For i=2 To sheetRows
For j = 1 To sheetColumns
data(i,j) = myExcelSheet.Cells(i,j).value '获取单元格值
Next
Next
ExcelBook.Quit
Set ExcelBook=Nothing
我是这样引用的,不知道是不是与你说的一样。
Dim filePath,sheetName '定义参数数据文件的路径
Dim sheetRows,sheetColumns '定义行数和列数
Dim excelBook,myExcelBook,myExcelSheet
filePath = Parameter("excelBook")
sheetName = Parameter("excelSheet")
Set excelBook = CreateObject("Excel.Application")
Set myExcelBook = excelBook.Workbooks.Open(filePath)
Set myExcelSheet = myExcelBook.Worksheets(sheetName)
sheetRows = myExcelSheet.UsedRange.Rows.Count '获取行数
sheetColumns = myExcelSheet.UsedRange.Columns.Count
Dim data() '定义数组读取单元格值
Redim data(sheetRows,sheetColumns) '重新定义数组
Dim i,j '定义循环变量
For i=2 To sheetRows
For j = 1 To sheetColumns
data(i,j) = myExcelSheet.Cells(i,j).value '获取单元格值
Next
Next
ExcelBook.Quit
Set ExcelBook=Nothing
我是这样引用的,不知道是不是与你说的一样。
追问
追答
因为读取的是外部Excel文件,因此必须先要让程序知道这个文件的路径、名称,其次才是循环读取每行的值。用vbscript好像就得那样脚本吧。for ... next 是循环读取的代码。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询