如何比較QTP中的兩行數據表如何比較QTP中的數據表中的兩行
3
A
回答
3
1)您想比較QTP本機DataTable對象中的數據行嗎?
使用SetCurrentRow方法 實施例:objDataSheet.SetCurrentRow(intRow)
使用的getParameter訪問列名和單元格值 sColName = objDataSheet.GetParameter(j)的請將.Name 值由指數:sCellValue = objDataSheet.GetParameter(j)的請將.Name 由COL名值:sCellValue = objDataSheet.GetParameter(sColName)請將.Name
2)執行ÿ你想在2個不同的Excel工作表中比較2行? 您可以使用以下代碼(取自我的博客http://automationbeyond.wordpress.com,也可參見其他示例)
Excel應用程序必須安裝在PC上。 比較在佔用範圍內逐個單元格。 不匹配的單元格標記爲紅色。
這兩個工作簿都必須存在並被定義爲帶文件的完整路徑。 這兩個工作表都必須存在,並且可以定義爲數字索引或字符串名稱。
objParameter是實施如「忽略大小寫」,「向上舍入數字」自定義比較保留參數等
Public Function ExcelWorksheetCompare(ByVal sWorkbook1, ByVal sWorksheet1, ByVal sWorkbook2, ByVal sWorksheet2, ByVal objParameter)
Dim boolRC, boolSheetExists
Dim FSO, XLHandle
Dim XLBook1, XLBook2, XLSheet1, XLSheet2
Dim Iter, objCell
‘Verify both files exist
Set FSO = CreateObject(」Scripting.FileSystemObject」)
boolRC = FSO.FileExists(sWorkbook1)
If Not boolRC Then
ExcelWorksheetCompare = FALSE
Exit Function
End If
boolRC = FSO.FileExists(sWorkbook2)
If Not boolRC Then
ExcelWorksheetCompare = FALSE
Exit Function
End If
Set FSO = Nothing
Set XLHandle = CreateObject(」Excel.Application」)
XLHandle.DisplayAlerts = False
‘Open workbook1
Set XLBook1 = XLHandle.WorkBooks.Open(sWorkbook1)
‘Verify sheet exists (1)
If isNumeric(sWorksheet1) Then
sWorksheet1 = CInt(sWorksheet1)
If (sWorksheet1 >0) AND (sWorksheet1<=XLBook1.Worksheets.Count) Then
Set XLSheet1 = XLBook1.Worksheets(sWorksheet1)
boolSheetExists = TRUE
Else
boolSheetExists = FALSE
End If
Else
boolSheetExists = FALSE
For Iter = 1To XLBook1.Worksheets.Count
If XLBook1.Worksheets(Iter).Name = sWorksheet1 Then
Set XLSheet1 = XLBook1.Worksheets(Iter)
boolSheetExists = TRUE
End If
Next
End If
If Not boolSheetExists Then
XLBook1.Close
XLHandle.Quit
Set XLBook1 = Nothing
Set XLHandle = Nothing
ExcelWorksheetCompare = FALSE
Exit Function
End If
‘Open workbook2
Set XLBook2 = XLHandle.WorkBooks.Open(sWorkbook2)
‘Verify sheet exists (2)
If isNumeric(sWorksheet2) Then
sWorksheet2 = CInt(sWorksheet2)
If (sWorksheet2 >0) AND (sWorksheet2<=XLBook2.Worksheets.Count) Then
Set XLSheet2 = XLBook2.Worksheets(sWorksheet2)
boolSheetExists = TRUE
Else
boolSheetExists = FALSE
End If
Else
boolSheetExists = FALSE
For Iter = 1To XLBook2.Worksheets.Count
If XLBook2.Worksheets(Iter).Name = sWorksheet2 Then
Set XLSheet2 = XLBook2.Worksheets(Iter)
boolSheetExists = TRUE
End If
Next
End If
If Not boolSheetExists Then
XLBook1.Close
XLBook2.Close
XLHandle.Quit
Set XLSheet1 = Nothing
Set XLBook1 = Nothing
Set XLBook2 = Nothing
Set XLHandle = Nothing
ExcelWorksheetCompare = FALSE
Exit Function
End If
‘Mark range
‘Compare and mark mismatches red
For Each objCell In XLSheet2.UsedRange
If objCell.Value <> XLSheet1.Range(objCell.Address).Value Then
objCell.Interior.ColorIndex = 3
Else
objCell.Interior.ColorIndex = 0
End If
Next
‘Save and close
XLBook1.Close
XLBook2.Save
XLBook2.Close
XLHandle.Quit
Set XLSheet1 = Nothing
Set XLSheet2 = Nothing
Set XLBook1 = Nothing
Set XLBook2 = Nothing
Set XLHandle = Nothing
ExcelWorksheetCompare = TRUE
End Function
相關問題
- 1. 如何使用QTP比較兩個數據庫表?
- 2. 如何比較Excel表中的兩行?
- 3. 比較表中的兩行
- 4. 比較兩個數據表中的c#
- 5. 比較兩個表中的數據
- 6. 比較兩個表中的行數
- 7. 在MySQL中的表中比較兩個連續的行數據
- 8. 比較OpenERP6.1中one2many表中的兩行
- 9. 如何比較兩個表格數據?
- 10. 如何比較SQL Server中的兩行
- 11. 如何比較asp.net中的兩個數據庫表字段
- 12. 如何比較YII2中的兩個數據庫表字段?
- 13. 如何在sql server 2008中比較兩個表中的每一行數據
- 14. 比較兩個數據行
- 15. 如何比較Silverstripe中的表中的兩行?
- 16. 比較兩個數據表
- 17. 如何比較Rails中兩個不同表格的兩行3.2.8
- 18. 比較同一表中的兩行(Duplicates)
- 19. 比較SQL中的兩行
- 20. 比較SQL中的兩個數據集
- 21. 兩個文件中的數據比較
- 22. 比較Pig中的兩個數據集
- 23. 比較SSRS中的兩個數據集
- 24. 需要比較Laravel中的數據庫中的兩行
- 25. 比較兩個表的數據
- 26. 比較跨數據庫的兩個表
- 27. 比較數據關係的兩個表
- 28. 如何比較Oracle表中的行?
- 29. 如何比較兩個有序數組中的結構數據?
- 30. 如何比較兩個數據表,僅檢查行發現