• 【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
  • 相关阅读:
    JVM内存模型
    生产者与消费者的Java实现
    kafka常用命令
    java中join用法
    elasticsearch关于索引切分的实现
    三十六进制加法
    leetCode之Median of Two Sorted Arrays
    腾讯云“动态加速”与“CDN”的区别——浅谈对“动态加速”的理解(可能有误)
    洗澡或游泳等导致的耳朵进水的解决方案
    windows服务器间文件同步搭建步骤搜集
  • 原文地址:https://www.cnblogs.com/sylvia-liu/p/3673180.html
Copyright © 2020-2023  润新知