如何将数据从SAP复制并粘贴到已使用VBA保存的excel文件中?

如何将数据从SAP复制并粘贴到已使用VBA保存的excel文件中?,excel,vba,sap-gui,Excel,Vba,Sap Gui,当我完成一项交易后,我的数据将在SAP中本地显示。我想复制并粘贴所有显示的数据,然后使用VBA将它们粘贴到正确的位置。 我还想知道是否有解决方案,以便在显示消息“未选择任何数据”时,我的程序仍能继续运行 Sub FOS() If Not IsObject(App) Then Set SapGuiAuto = GetObject("SAPGUI") Set App = SapGuiAuto.GetScriptingEngine End If If Not IsObject(Conne

当我完成一项交易后,我的数据将在SAP中本地显示。我想复制并粘贴所有显示的数据,然后使用VBA将它们粘贴到正确的位置。 我还想知道是否有解决方案,以便在显示消息“未选择任何数据”时,我的程序仍能继续运行

 Sub FOS()

 If Not IsObject(App) Then
 Set SapGuiAuto = GetObject("SAPGUI")
 Set App = SapGuiAuto.GetScriptingEngine
 End If
 If Not IsObject(Connection) Then
 Set Connection = App.Children(0)
 End If
 If Not IsObject(session) Then
 Set session = Connection.Children(0)
 End If
 If IsObject(WScript) Then
 WScript.ConnectObject session, "on"
 WScript.ConnectObject Application, "on"
 End If
 session.findById("wnd[0]").maximize
 session.findById("wnd[0]/tbar[0]/okcd").Text = "S_ALR_87011964"
 ...
 session.findById("wnd[0]/usr/chkP_GRID").Selected = True
 session.findById("wnd[0]/usr/ctxtBERDATUM").Text = "31.12.2019"
 session.findById("wnd[0]/usr/ctxtBEREICH1").Text = "01"
 session.findById("wnd[0]/usr/ctxtSRTVR").Text = "Z003"
 session.findById("wnd[0]/usr/chkP_GRID").SetFocus
 session.findById("wnd[0]").sendVKey 2
 session.findById("wnd[0]/tbar[1]/btn[19]").press
 session.findById("wnd[0]/usr/chkPA_XGBAF").Selected = True
 session.findById("wnd[0]/usr/chkPA_XGBAF").SetFocus
 session.findById("wnd[0]/tbar[1]/btn[8]").press

 End Sub
我想将数据从SAP复制并粘贴到excel。
此外,有时当我收到诸如“未选择任何数据”之类的消息时,我的程序会停止。

当显示消息“未选择任何数据”时,您的意思是弹出窗口显示消息并显示代码错误,还是说消息显示在SAP窗口的底部?@Nacorid我想说:当消息“未选择任何数据“是否显示?您的意思是弹出窗口显示消息和您的代码错误?您能否更明确地说明错误消息?尽管您描述得很模糊,但我最好的猜测是,您的代码在继续之前没有从列表中选择项目,这会促使您的SAP客户端告诉您选择数据。是的,交易没有找到任何内容,但当我有多个交易要执行时,我希望SAP在没有找到任何数据时切换到另一个交易对不起,我希望你能理解,英语不是我的母语。当你说显示消息“未选择任何数据”时,你是说弹出窗口显示消息并显示代码错误,还是说消息显示在SAP窗口的底部?@Nacorid我想说:当消息“未选择任何数据“是否显示?您的意思是弹出窗口显示消息和您的代码错误?您能否更明确地说明错误消息?尽管您描述得很模糊,但我最好的猜测是,您的代码在继续之前没有从列表中选择项目,这会促使您的SAP客户端告诉您选择数据。是的,交易没有找到任何内容,但当我有多个交易要执行时,我希望SAP在没有找到任何数据时切换到另一个交易对不起,我希望你能理解,英语不是我的母语。