SAP GUI Scripting VBA Code Snippet to Detect all IDs of the UI Elements
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 | ' - Begin - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Option Explicit Dim gColl() As String Dim j As Integer Sub GetAll(Obj As Object ) ' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' - ' - Recursively called sub routine to get the IDs of all UI elements ' - ' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim cntObj As Integer Dim i As Integer Dim Child As Object On Error Resume Next cntObj = Obj.Children.Count() If cntObj > 0 Then For i = 0 To cntObj - 1 Set Child = Obj.Children.Item(CLng(i)) GetAll Child ReDim Preserve gColl(j) gColl(j) = CStr(Child. ID ) j = j + 1 Next End If On Error GoTo 0 End Sub Sub Start() ' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' - ' - Sub routine to get all UI elements of the SAP GUI for Windows ' - with connection 0 and session 0 ' - ' - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim SapGuiAuto As Object Dim app As SAPFEWSELib.GuiApplication Dim connection As SAPFEWSELib.GuiConnection Dim session As SAPFEWSELib.GuiSession Dim i As Integer Set SapGuiAuto = GetObject( "SAPGUI" ) If Not IsObject(SapGuiAuto) Then Exit Sub End If Set app = SapGuiAuto.GetScriptingEngine If Not IsObject(app) Then Exit Sub End If Set connection = app.Children( 0 ) If Not IsObject(connection) Then Exit Sub End If If connection.DisabledByServer = True Then Exit Sub End If Set session = connection.Children( 0 ) If Not IsObject(session) Then Exit Sub End If If session.Info.IsLowSpeedConnection = True Then Exit Sub End If GetAll session For i = LBound(gColl) To UBound(gColl) Cells(i + 1 , 1 ) = gColl(i) Next End Sub ' - End - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
2021-08-25 access 点滴