您的位置:首页 > 编程语言 > Qt开发

QTP学习笔记--Excel数据源

2013-12-05 22:03 381 查看
直接读取Excel表格的function摘自此处http://www.51testing.com/html/40/307440-827863.html 特此感谢!

Excel作为QTP自动化测试的数据源,有两种方式可应用到脚本中

一、导入到DataTable中

ImportData("Login")
Function ImportData(SheetName)
DataTable.ImportSheet Environment.Value("TestDir")&"\TestData.xls",SheetName,"Global"
End Function


说明:ImportSheet的第二个参数可用Sheet编号,从1开始

QTP11不支持word2007及以上的Excel文件(.xlsx)

二、使用Excel COM直接读取Excel

'========================================
'名     称: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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: