如何使用VBA将数据从SAP复制到Excel?

时间:2019-06-05 09:51:23

标签: excel vba sap

我想自动化几个事务,因此我将数据导入到一个缓冲文件中(我更喜欢.txt)。 然后,我将使用该缓冲文件,该缓冲文件在示例中始终具有相同的名称(TEST.txt)。 然后,我想复制此数据以将其传输到我的excel文件中,该文件必须粘贴所有数据(我将其称为FOS)。

  Public Sub RunGUIScript()
  Dim W_Ret As Boolean
 ' Connect to SAP
  W_Ret = Attach_Session
  If Not W_Ret Then
  Exit Sub
  End If
  On Error GoTo myerr
  objSess.findById("wnd[0]/usr/tabsTABSTRIP_TABBL1/tabpUCOM2/ssub%_
  SUBSCREEN_TABBL1:RFBILA00:0002/ctxtBILAGKON").text = "3"
  objSess.findById("wnd[0]/usr/tabsTABSTRIP_TABBL1/tabpUCOM2/ssub%_
  SUBSCREEN_TABBL1:RFBILA00:0002/ctxtBILAVART").text = "1"
  objSess.findById("wnd[0]/usr/tabsTABSTRIP_TABBL1/tabpUCOM2/ssub%_
  SUBSCREEN_TABBL1:RFBILA00:0002/ctxtBILASKAL").text = 
  "0/0"
  objSess.findById("wnd[0]/usr/tabsTABSTRIP_TABBL1/tabpUCOM2/
  ssub%_SUBSCREEN_TAB BL1:RFBILA00:0002/ctxtBILASKAL").setFocus
  objSess.findById("wnd[0]/usr/tabsTABSTRIP_TABBL1/tabpUCOM2/
  ssub%_SUBSCREEN_TAB BL1:RFBILA00:0002/ctxtBILASKAL").caretPosition = 3
  objSess.findById("wnd[0]/tbar[1]/btn[8]").press
  objSess.findById("wnd[0]/mbar/menu[0]/menu[3]/menu[2]").select
  objSess.findById("wnd[1]/usr/subSUBSCREEN_STEPLOOP:SAPLSPO5:0150/
  sub:SAPLSPO5:0150/radSPOPLI-SELFLAG[1,0]").select
  objSess.findById("wnd[1]/usr/subSUBSCREEN_STEPLOOP:SAPLSPO5:0150/
  sub:SAPLSPO5: 0150/radSPOPLI-SELFLAG[1,0]").setFocus
  objSess.findById("wnd[1]/tbar[0]/btn[0]").press
  objSess.findById("wnd[1]/usr/ctxtDY_FILENAME").text = "TEST.TXT"
  objSess.findById("wnd[1]/usr/ctxtDY_FILENAME").caretPosition = 11
  objSess.findById("wnd[1]/tbar[0]/btn[0]").press
  Exit Sub

执行此代码后,我想在以下路径中搜索文件:C:\ Users \ p100789 \ Documents \ SAP \ SAP GUI 然后将其粘贴到名为Table30的工作表上的Excel FOS文件中。

0 个答案:

没有答案