我叫陈永达,欢迎来到我的51testing空间!
才开始使用,想把关于软件测试的一些资料和心得保存于此。
欢迎大家多来参观,多提宝贵意见!
【QTP】读取Excel表的用法
上一篇 /
下一篇 2012-10-18 16:22:14 / 天气: 晴朗
/ 心情: 高兴
/ 个人分类:QTP
先贴上函数:
'======================================== '名 称:QTP_ReadExcel '作 用:从Excel读数据 '参 数:sFileName:EXCEL文件名 sSheetName:Sheet表名 '返回值:把EXCEL变为2维数组返回 '======================================== Function QTP_ReadExcel(sFileName,sSheetName) Dim oExcel Dim oSheet Dim oRange Dim arrRange
On Error Resume Next ' 创建Excel应用程序对象 Set oExcel = CreateObject("Excel.Application") If err.Number <> 0 Then MsgBox "未能初始化Excel" & vbCrLf & "请确保Excel已安装", vbCritical Exit Function End If On Error GoTo 0
On Error Resume Next ' 打开Excel文件 oExcel.Workbooks.Open(sFileName) If err.Number <> 0 Then MsgBox "未能加载Excel文件" & vbCrLf & "请确保Excel文件路径正确或格式正确", vbCritical Exit Function End If On Error GoTo 0
' 获取表格的使用范围 Set oSheet = oExcel.Worksheets(sSheetName).UsedRange ' 获取从A列到Z列,从第1行到第1000行的范围i中的所有值 Set oRange = oSheet.Range("A1:Z1000") '把Excel数据转换到数组 arrRange = oRange.Value ' 关闭工作簿 oExcel.WorkBooks.Item(1).Close
' 退出Excel oExcel.Quit Set oExcel = Nothing ' 返回包含Excel数据的数组 QTP_ReadExcel = arrRange End Function |
再贴上调用方法:
Dim arrExcel arrExcel = QTP_ReadExcel("D:\test.xls","sheet1") print arrExcel(1,2) |
假设表格如下,
要使用D2,则为arrExcel(2,4)
要使用A10,则为arrExcel(10,1),应该找出规律了吧。
我一般用此函数进行参数化和配置的操作,将需要
测试的数据写在Excel中,在运行QTP时,会进行读取Excel中数据来进行测试。也会将一些配置写入Excel中,如用1和0表示是否,来进行是否重启IE、是否写Log等动作的控制,也可以写入数字,来控制脚本的运行次数,个人感觉挺方便的。
还是不太喜欢使用QTP自带的DataTable,一来是觉得多台测试机的情况下,每台都要配置比较麻烦,二来是担心一些配置会影响脚本。
收藏
举报
TAG:
软件测试
Excel
excel
EXCEL
QTP
陈永达