Vbscript 如何使用GUI脚本读取GuitTree控件的行详细信息
我需要在SAP中读取下面变量表最后一行的特定列值。当我记录脚本以浏览表中的行时,我会看到下面的行。我需要提取特定的单元格值。我可以手动将行的内容复制并粘贴到记事本。但是,我无法理解如何读取特定列或整行的内容 我一直在尝试不同的方法:Vbscript 如何使用GUI脚本读取GuitTree控件的行详细信息,vbscript,automation,sap,rpa,Vbscript,Automation,Sap,Rpa,我需要在SAP中读取下面变量表最后一行的特定列值。当我记录脚本以浏览表中的行时,我会看到下面的行。我需要提取特定的单元格值。我可以手动将行的内容复制并粘贴到记事本。但是,我无法理解如何读取特定列或整行的内容 我一直在尝试不同的方法: session.findById("wnd[0]/usr/subTABSTRIP:SAPLATAB:0100/tabsTABSTRIP100/tabpTAB06/" _ & "ssubSUBSC:SAPLATAB:0201/subAREA1:SAPL
session.findById("wnd[0]/usr/subTABSTRIP:SAPLATAB:0100/tabsTABSTRIP100/tabpTAB06/" _
& "ssubSUBSC:SAPLATAB:0201/subAREA1:SAPLAIA1:0304/subSUB:SAPLAIA1:0308/" _
& "subTREE:SAPLAIA1:0306/cntlVARI_CANVAS/shell").selectedNode = "0001"
session.findById("wnd[0]/usr/subTABSTRIP:SAPLATAB:0100/tabsTABSTRIP100/tabpTAB06/" _
& "ssubSUBSC:SAPLATAB:0201/subAREA1:SAPLAIA1:0304/subSUB:SAPLAIA1:0308/" _
& "subTREE:SAPLAIA1:0306/cntlVARI_CANVAS/shell").selectedNode = "0002"
这些是使用向下箭头键向下移动行时生成的行。但是我怎样才能得到行的内容呢
这是一个对象,更确切地说是“列树”类型的对象
在您的情况下,这将是:
set tree = session.findById("wnd[0]/usr/subTABSTRIP:SAPLATAB:0100/tabsTABSTRIP100/tabpTAB06/" _
& "ssubSUBSC:SAPLATAB:0201/subAREA1:SAPLAIA1:0304/subSUB:SAPLAIA1:0308/" _
& "subTREE:SAPLAIA1:0306/cntlVARI_CANVAS/shell")
属性SelectedNode
给出一个字符串,该字符串是当前所选节点的键(“节点”表示树的一行):
从那里,您可以使用方法GetNodeText
访问节点文本:
nodeText = tree.GetNodeText( nodekey )
单元格的文本通过方法GetItemText
获得(“项”是树的行和列的交点处的单元格,不包括包含层次结构的左列):
列名是通过方法GetColumnNames
获得的:
set columnNames = tree.GetColumnNames()`
如果列名是一个对象,可以按如下方式循环其元素:
for i = 0 to columnNames.Length - 1
colunmName = columnNames.ElementAt(i)
next
set columnNames = tree.GetColumnNames()`
for i = 0 to columnNames.Length - 1
colunmName = columnNames.ElementAt(i)
next