|
若楼主当前表格没有翻页,只要直接名字就可以了。不过有翻页的话,个人觉得有点麻烦。
我今天正好做了一个类似的脚本,有点烦琐。楼主可以参考一下。
因为我现在测试的那个页面中有关列表都是一样的,因此我单独做了一个搜索单元格列表的脚本
搜索单元格列表的传入参数是表格中的列数(iColumn)和表格中的单元格名称(iCellname)
其他脚本调用这个脚本的时候,只要传入表格中的列数和表格中的单元格名称就能定位所
需要的行。
步骤
1:先识别出当前表格
2:对当前表格有没有翻页进行判断,具体可以做一个输出值检查点,将值赋给一个变量
3:判断当前表格存在不存在,不存在则退出
4:判断当前表格是否小于2行(因为数据是从第2行开始才是记录数据的),不存在则退出
5:下面开始逐页逐行做循环判断,判断当前获取到的值是否与传入的值一致。
下面是代码
Browser("KOA知识办公自动化系统").Page("KOA知识办公自动化系统").Frame("rightFrm").Output CheckPoint("共 21 条记录 当前页面是第 1 页 共_2")
iPages1 = environment("iPages1")
If isnull(iPages1)= 0 Then
exitaction(0)
End If
Dim iWebtable,iLink,RC
Set iWebtable = Browser("KOA知识办公自动化系统").Page("KOA知识办公自动化系统").Frame("rightFrm").WebTable("标题")
Set iLink = Browser("KOA知识办公自动化系统").Page("KOA知识办公自动化系统").Frame("rightFrm").WebElement ("下一页")
If iWebtable.exist(1)=0 Then
exitaction(0)
End If
RC = iWebtable.rowcount
If RC<2 Then
Exitaction(0)
End If
Dim eCellname,eColumn,pCellname,i,j
eCellname= parameter("iCellname")
eColumn= parameter("iColumn")
i =1
Do while i <= iPages1
Set iWebtable = Browser("KOA知识办公自动化系统").Page("KOA知识办公自动化系统").Frame("rightFrm").WebTable("标题")
Set iLink = Browser("KOA知识办公自动化系统").Page("KOA知识办公自动化系统").Frame("rightFrm").WebElement ("下一页")
j=2
While j< RC
pCellname =iWebtable.Getcelldata(j,eColumn)
If ltrim(pCellname) = eCellname Then
exitaction(-1)
End If
j=j+1
Wend
If (iLink.exist(1)) Then
iLink.Click
else
exitaction(0)
End If
i= i+1
Loop
其中传入参数为:iCellname和iColumn
其他脚本调用这个脚本时,只需要传入iCellname和iColumn的值,就能够准确定位
比如传入:无设备套餐3 和3 ,就定位到(0000000000000147 无设备套餐3 200.00 2007-12-31 2007-09-25 正常 ) 这一行 |
|