在Excel VBA宏中打开从SAP调用的Excel电子表格,可以按照以下步骤进行操作:
Sub OpenSAPExcel()
Dim sapApp As Object
Dim sapConnection As Object
Dim sapSession As Object
Dim sapWorkbook As Object
' 创建SAP连接
Set sapApp = CreateObject("Sapgui.ScriptingCtrl.1")
Set sapConnection = sapApp.OpenConnection("SAP System ID", True)
Set sapSession = sapConnection.Children(0)
' 调用SAP事务码
sapSession.findById("wnd[0]").maximize
sapSession.findById("wnd[0]/tbar[0]/okcd").Text = "/n"
sapSession.findById("wnd[0]/tbar[0]/btn[0]").Press
' 执行SAP事务码,导出Excel电子表格
sapSession.findById("wnd[0]").sendVKey 0
sapSession.findById("wnd[0]/usr/ctxtDY_PATH").Text = "C:\Path\To\Save\Excel\File"
sapSession.findById("wnd[0]/usr/ctxtDY_FILENAME").Text = "SAP_Export.xlsx"
sapSession.findById("wnd[0]/usr/ctxtDY_FILENAME").SetFocus
sapSession.findById("wnd[0]/usr/ctxtDY_FILENAME").caretPosition = 11
sapSession.findById("wnd[0]").sendVKey 0
sapSession.findById("wnd[0]").sendVKey 0
' 关闭SAP连接
sapSession.findById("wnd[0]").CloseConnection
' 打开导出的Excel电子表格
Set sapWorkbook = Workbooks.Open("C:\Path\To\Save\Excel\File\SAP_Export.xlsx")
End Sub
请注意,上述代码中的"SAP System ID"应替换为您的SAP系统标识符,并且"C:\Path\To\Save\Excel\File"应替换为您希望保存导出文件的路径。
以上代码将创建一个SAP连接并调用SAP事务码来导出Excel电子表格。然后,它将关闭SAP连接并打开导出的Excel电子表格。
这种方法可以在Excel VBA宏中实现从SAP调用的Excel电子表格的打开。
领取专属 10元无门槛券
手把手带您无忧上云