zoukankan      html  css  js  c++  java
  • 【QTP专题】05_参数化之Excel

    QTP使用外部Excel实现参数化主要有以下两种方式

    • 导入到DataTable中 

     Syntax:DataTable.ImportSheet(FileName, SheetSource, SheetDest)

       FileName:文件路径名

      SheetSource:待导入Excel文件的sheet名称或序号

      SheetDest:QTP中DataTable中sheet名称或序号

    参考案例:

    Dim filePath '工作表所在文件路径;
    Dim strDataSheet 'QTP中DataTable内待倒入的sheet的名称
    
    filePath= "d:data.xls"
    strDataSheet = DataTable.GlobalSheet.Name
    
    DataTable.ImportSheet filePath ,1 ,strDataSheet  '第二个参数:1表示excel的第一个sheet,也可以用sheet名称代替;第三个参数同理

     Excle中数据倒入到DataTable中后,执行从DataTable中读取数据的操作,具体操作参考 【QTP专题】05_参数化之DataTable

    • 利用com操纵Excel

    Option Explicit
    ' =================================================
    ' 函数说明:获取Excel工作表中单元格的值
    ' 参数说明:
    '        (1)filePath:工作表所在文件路径;
    '        (2)excelSheet:工作表名称;
    '        (3)colName:列名;
    '        (4)row:行的序号;
    ' 返回结果:返回单元格的值
    ' 调用方法:userName=getCellValue (filePath,"loginUser","用户名",2)
    ' =================================================
    
    Function getCellValue(filePath,excelSheet,colName,row)
       Dim ObjExcel,excBook,excSheet,cellValue
       Set ObjExcel = CreateObject ("Excel.Application")
       ObjExcel.Visible = False 'Excel程序不在前台显示
       Set excBook = ObjExcel.WorkBooks.Open(filePath) '打开参数filePath指定的excel文件工作簿
       Set excSheet=excBook.Worksheets(excelSheet) '名为参数excelSheet的工作表
       colNum= excSheet.UsedRange.Columns.Count '获取工作表的列数
    
       Dim i,col
       For i=1 to colNum '循环工作表中所有列
            If excSheet.Cells(1,i).Value = colName Then '如果列名为参数colName
                col=i '将该列名所在列号赋给变量col
            End If
       Next
     
       cellValue = excSheet.Cells(row,col).Value '将单元格(row,col)中的值赋予变量cellValue  
       getCellValue = cellValue   '将单元格的值赋予函数本身,表示调用函数时的返回值
    
       'Excel退出,释放资源
       ObjExcel.WorkBooks.Close
       ObjExcel.Quit
       Set ObjExcel = Nothing
       Set excelBook = Nothing
    End Function
  • 相关阅读:
    JavaScript中需要注意的几个问题
    前端编码规范之JavaScript
    那些年,我们一起玩过的响应式布局
    前端编码规范之CSS
    一个不陌生的JS效果-marquee,用css3来实现
    解读jQuery中extend函数
    字体大小自适应纯css解决方案
    浅谈叶小钗面试的几个问题
    【Python开发】C和Python之间的接口实现
    【Python开发】【编程开发】各种系统的清屏操作命令
  • 原文地址:https://www.cnblogs.com/sylvia-liu/p/3673180.html
Copyright © 2011-2022 走看看