检索特定列中最后一行的值

2020-09-03 23:52发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我正在尝试从特定列的最后一行检索值。 我能够获取行数,并将其分配给另一个变量以使用GetCellValue获取值,而该函数不会返回任何值。

rowValue = session.findById("WND [0]的/usr/subSCREEN_3000_RESIZING_AREA:SAPLBUS_LOCATOR:2036/subSCREEN_1010_LEFT_AREA:SAPLBUS_LOCATOR:3100/tabsGS_SCREEN_3100_TABSTRIP/tabpBUS_LOCATOR_TAB_02/ssubSCREEN_3100_TABSTRIP_AREA:SAPLBUS_LOCATOR:3200/subSCREEN_3200_SEARCH_AREA:SAPLBUS_LOCATOR:3211/subSCREEN_3200_RESULT_AREA:SAPLBUPA_DIALOG_JOEL:1060/ssubSCREEN_1060_RESULT_AREA:SAPLBUPA_DIALOG_JOEL:1080/cntlSCREEN_1080_CONTAINER/shellcont/shell")。RowCount

lastRow = rowValue

部分= session.findById("WND [0]的/usr/subSCREEN_3000_RESIZING_AREA:SAPLBUS_LOCATOR:2036/subSCREEN_1010_LEFT_AREA:SAPLBUS_LOCATOR:3100/tabsGS_SCREEN_3100_TABSTRIP/tabpBUS_LOCATOR_TAB_02/ssubSCREEN_3100_TABSTRIP_AREA:SAPLBUS_LOCATOR:3200/subSCREEN_3200_SEARCH_AREA:SAPLBUS_LOCATOR:3211/subSCREEN_3200_RESULT_AREA:SAPLBUPA_DIALOG_JOEL:1060 /ssubSCREEN_1060_RESULT_AREA:SAPLBUPA_DIALOG_JOEL:1080/cntlSCREEN_1080_CONTAINER/shellcont/shell").GetCellValue(lastRow,"PART")

打印(部分)

它似乎不起作用。 我不明白为什么它没有抓住价值。

打印行值,我可以得到行数。

此致

人。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我正在尝试从特定列的最后一行检索值。 我能够获取行数,并将其分配给另一个变量以使用GetCellValue获取值,而该函数不会返回任何值。

rowValue = session.findById("WND [0]的/usr/subSCREEN_3000_RESIZING_AREA:SAPLBUS_LOCATOR:2036/subSCREEN_1010_LEFT_AREA:SAPLBUS_LOCATOR:3100/tabsGS_SCREEN_3100_TABSTRIP/tabpBUS_LOCATOR_TAB_02/ssubSCREEN_3100_TABSTRIP_AREA:SAPLBUS_LOCATOR:3200/subSCREEN_3200_SEARCH_AREA:SAPLBUS_LOCATOR:3211/subSCREEN_3200_RESULT_AREA:SAPLBUPA_DIALOG_JOEL:1060/ssubSCREEN_1060_RESULT_AREA:SAPLBUPA_DIALOG_JOEL:1080/cntlSCREEN_1080_CONTAINER/shellcont/shell")。RowCount

lastRow = rowValue

部分= session.findById("WND [0]的/usr/subSCREEN_3000_RESIZING_AREA:SAPLBUS_LOCATOR:2036/subSCREEN_1010_LEFT_AREA:SAPLBUS_LOCATOR:3100/tabsGS_SCREEN_3100_TABSTRIP/tabpBUS_LOCATOR_TAB_02/ssubSCREEN_3100_TABSTRIP_AREA:SAPLBUS_LOCATOR:3200/subSCREEN_3200_SEARCH_AREA:SAPLBUS_LOCATOR:3211/subSCREEN_3200_RESULT_AREA:SAPLBUPA_DIALOG_JOEL:1060 /ssubSCREEN_1060_RESULT_AREA:SAPLBUPA_DIALOG_JOEL:1080/cntlSCREEN_1080_CONTAINER/shellcont/shell").GetCellValue(lastRow,"PART")

打印(部分)

它似乎不起作用。 我不明白为什么它没有抓住价值。

打印行值,我可以得到行数。

此致

人。

付费偷看设置
发送
2条回答
1楼-- · 2020-09-04 00:00

在vba中,您可以声明对象并将其设置为外壳程序,例如

将zTreeList变暗为SAPFEWSELib.GuiTree
     Dim zTreeDet作为SAPFEWSELib.GuiShell
 

从那里,您可以查看一些可用于遍历GUIShell或GUItree的便捷方法

我个人并不熟悉获取最后一个值的方法,但是您可以通过以下内容从顶部开始

'设置对象
 集zTreeList = session.findById("WND [0]的/usr/subSCREEN_3000_RESIZING_AREA:SAPLBUS_LOCATOR:2036/subSCREEN_1010_LEFT_AREA:SAPLBUS_LOCATOR:3100/tabsGS_SCREEN_3100_TABSTRIP/tabpBUS_LOCATOR_TAB_02/ssubSCREEN_3100_TABSTRIP_AREA:SAPLBUS_LOCATOR:3200/subSCREEN_3200_SEARCH_AREA:SAPLBUS_LOCATOR:3211/subSCREEN_3200_RESULT_AREA:SAPLBUPA_DIALOG_JOEL:1060/ssubSCREEN_1060_RESULT_AREA  :SAPLBUPA_DIALOG_JOEL:1080/cntlSCREEN_1080_CONTAINER/shellcont/shell")

 '设置初始节点
 targetItem = zTreeList.TopNode

 '做一点事
 zTreeList.DoubleClickNode(targetItem)

 '设置新对象(仅从SLG1子屏幕中采样)
 设置zTreeDet = session.FindById(" wnd [0]/usr/subSUBSCREEN:SAPLSBAL_DISPLAY:0101/cntlSAPLSBAL_DISPLAY_CONTAINER/shellcont/shell/shellcont [1]/shell")

 在这种情况下,请阅读所有子项中的一些文本
 对于i = zTreeDet.FirstVisibleRow至zTreeDet.RowCount-1
     如果InStr(1,zTreeDet.GetCellValue(i," T_MSG"),inp.DataBodyRange(nRow,1),vbTextCompare)> 0然后
        foundIt =" X"
        退出
     其他:
                              
     万一
 下一个

 '迭代到下一个节点
 targetItem = zTreeList.GetNextNodeKey(targetItem)

 

可用于gui脚本api的帮助文本对于您的用例可能会有很大的帮助。 希望这会有所帮助:)

软件心理学工程师
2楼-- · 2020-09-04 00:01

谢谢Daniel的答复。 我可以使用while循环使其工作。

p = 0

rowValue = session.findById("WND [0]的/usr/subSCREEN_3000_RESIZING_AREA:SAPLBUS_LOCATOR:2036/subSCREEN_1010_LEFT_AREA:SAPLBUS_LOCATOR:3100/tabsGS_SCREEN_3100_TABSTRIP/tabpBUS_LOCATOR_TAB_02/ssubSCREEN_3100_TABSTRIP_AREA:SAPLBUS_LOCATOR:3200/subSCREEN_3200_SEARCH_AREA:SAPLBUS_LOCATOR:3211/subSCREEN_3200_RESULT_AREA:SAPLBUPA_DIALOG_JOEL:1060/ssubSCREEN_1060_RESULT_AREA:SAPLBUPA_DIALOG_JOEL:1080/cntlSCREEN_1080_CONTAINER/shellcont/shell")。行数

,而p

打印(部分)

p + = 1

此致

Ren。

一周热门 更多>