#excel #vba #sap
#excel #vba #sap
Вопрос:
Мне нужно ввести идентификатор пользователя в код VBA.
Как на картинке:
Я пытался
UserId = Session.FindById("wnd[0]").User
Но это не удалось. Как правильно поступить?
Комментарии:
1. Я думаю, нам нужно немного больше информации, чтобы помочь с этим
2. Это Excel, который встроен в список ALV или какой-либо другой подключенный источник SAP? Вы показываете SAPGui, но как это взаимодействует с Excel?
Ответ №1:
Еще проще было бы:
UserId = Session.Info.User
Ответ №2:
Это оказалось просто:
Sub Getuser()
Dim SapGuiAuto
Dim SetApp
Dim Connection
Dim Session
Set SapGuiAuto = GetObject("SAPGUI")
Set SetApp = SapGuiAuto.GetScriptingEngine
Set Connection = SetApp.Children(0)
Set Session = Connection.Children(0)
Session.FindById("wnd[0]").Maximize
Session.FindById("wnd[0]/mbar/menu[4]/menu[11]").Select
MsgBox Session.FindById("wnd[1]/usr/txtSYST-UNAME").Text
Session.FindById("wnd[1]/tbar[0]/btn[0]").Press
End Sub