我希望在通过VBA打开的SmarTerm应用程序窗口中搜索特定的文本行,然后将数据行的其余部分复制到工作表中的单元格中。以前这是使用反射会话完成的,但我现在除了使用SmarTerm之外别无选择。
使用反射的代码是:
Found = Session.FindText("SEARCH TEXT", 0, 0)
If Found Then
str_get_string_from_reflection = .GetText(Session.FoundTextRow, 19, Session.FoundTextRow, 60)
Trim (str_get_string_from_reflection)
rng_range_constants_col_A.Offset(0,3).Value = "Search Text: " & str_get_string_from_reflection
End If
遗憾的是,这并不适用于SmarTerm解决方案,我尝试使用Session.StringWait.MatchString
命令,但这似乎并没有在整个可见屏幕中进行搜索。
非常感谢能提供的任何帮助
我已尝试使用SmarTerm宏指南(http://www.esker.com/fm/others/eval-smarterm/bin1211/macro.pdf)但无法找到支持在可用文本中搜索的StringWait.MatchString
或StringWait.MatchStringExact
以外的任何内容。可悲的是,这似乎只是在文本的最后一行搜索,而不是在整个可见屏幕上搜索。
答案 0 :(得分:0)
您可以使用Session.ScreenText(row, col, page, chars)