SAP GUI 脚本:读取 table 控件中的单元格值
SAP GUI Scripting: read cell value in a table control
我想读取 table 上的单元格值 - 以下事务 C202 的示例。
我可以使用 SAP GUI Scripting Recorder 来 "check"
或 "select"
(row = 5, column = 1)
,它紧挨着 "0122"
和 (row = 5, column = 1)
,它紧挨着"0125"
.
它给了我一个简单的代码:
''' selects 0122
session.findById("wnd[0]/usr/tabsTABSTRIP_RECIPE/tabpVOUE/ssubSUBSCREEN_RECIPE:SAPLCPDI:4401/tblSAPLCPDITCTRL_4401").getAbsoluteRow(4).selected = true
'''selects 0125
session.findById("wnd[0]/usr/tabsTABSTRIP_RECIPE/tabpVOUE/ssubSUBSCREEN_RECIPE:SAPLCPDI:4401/tblSAPLCPDITCTRL_4401").getAbsoluteRow(7).selected = true
但是,它会改变可用的行数。
有时会有:
0100, 0110, 0120, 0121, 0122, 0123, 0124, 0125, 0130, 0140
-sometimes there will be 0100, 0110, 0122, 0123, 0124, 0125, 0140
-sometimes there will be 0100, 0121, 0122, 0123, 0124, 0125, 0140
-sometimes there will be 0100, 0122, 0123, 0125, 0130, 0140
etc
我想阅读第 2 列,以便知道它是 0122 还是 0125,然后检查它们。
如何将此值放入变量中并使用 msgbox 显示它?
PSEUDO CODE
dim readVariable as string
for row = 1 to NumberOfRows
readVariable = Table.Read (row,2)
if readVariable = 0122
msgbox "row = " & row " & " is 0122"
end if
if readVariable = 0125
msgbox "row = " & row " & " is 0125"
end if
next
我尝试关注 Link
但我无法让它工作。
非常感谢!!!
使用“&”而不是 +,您将得到 01101,因为 VBS 将假设转换将定向到字符串类型,并将您的字符串与“1”连接,而不是将您的字符串解析为数字类型变量简单地加 1.
我想读取 table 上的单元格值 - 以下事务 C202 的示例。
我可以使用 SAP GUI Scripting Recorder 来 "check"
或 "select"
(row = 5, column = 1)
,它紧挨着 "0122"
和 (row = 5, column = 1)
,它紧挨着"0125"
.
它给了我一个简单的代码:
''' selects 0122
session.findById("wnd[0]/usr/tabsTABSTRIP_RECIPE/tabpVOUE/ssubSUBSCREEN_RECIPE:SAPLCPDI:4401/tblSAPLCPDITCTRL_4401").getAbsoluteRow(4).selected = true
'''selects 0125
session.findById("wnd[0]/usr/tabsTABSTRIP_RECIPE/tabpVOUE/ssubSUBSCREEN_RECIPE:SAPLCPDI:4401/tblSAPLCPDITCTRL_4401").getAbsoluteRow(7).selected = true
但是,它会改变可用的行数。
有时会有:
0100, 0110, 0120, 0121, 0122, 0123, 0124, 0125, 0130, 0140
-sometimes there will be 0100, 0110, 0122, 0123, 0124, 0125, 0140
-sometimes there will be 0100, 0121, 0122, 0123, 0124, 0125, 0140
-sometimes there will be 0100, 0122, 0123, 0125, 0130, 0140
etc
我想阅读第 2 列,以便知道它是 0122 还是 0125,然后检查它们。
如何将此值放入变量中并使用 msgbox 显示它?
PSEUDO CODE
dim readVariable as string
for row = 1 to NumberOfRows
readVariable = Table.Read (row,2)
if readVariable = 0122
msgbox "row = " & row " & " is 0122"
end if
if readVariable = 0125
msgbox "row = " & row " & " is 0125"
end if
next
我尝试关注 Link 但我无法让它工作。
非常感谢!!!
使用“&”而不是 +,您将得到 01101,因为 VBS 将假设转换将定向到字符串类型,并将您的字符串与“1”连接,而不是将您的字符串解析为数字类型变量简单地加 1.