Descargar archivos de excel desde SAP y luego cerrarlo

Estoy generando un script desde sap el cual genera un reporte que descargar y guarda como un achivo de excel, el problema es que al guardarlo inmetiatamente el libro se abre y ya luego no se como cerrrarlo desde la misma macro, envío el codsigo:

Sub SAP()

Dim application
Dim connection
If Not IsObject(application) Then
Set SapGuiAuto = GetObject("SAPGUI")
Set application = SapGuiAuto.GetScriptingEngine
End If
If Not IsObject(connection) Then
Set connection = application.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]/tbar[0]/okcd").Text = "Y_FI_GRL_001_NGL"
session.findById("wnd[0]/tbar[0]/btn[0]").press
session.findById("wnd[0]/tbar[1]/btn[17]").press
session.findById("wnd[1]/usr/txtENAME-LOW").Text = "ITCO3182"
session.findById("wnd[1]/usr/txtENAME-LOW").SetFocus
session.findById("wnd[1]/usr/txtENAME-LOW").caretPosition = 8
session.findById("wnd[1]/tbar[0]/btn[8]").press
session.findById("wnd[1]/usr/cntlALV_CONTAINER_1/shellcont/shell").setCurrentCell 3, "PROTECTED"
session.findById("wnd[1]/usr/cntlALV_CONTAINER_1/shellcont/shell").selectedRows = "3"
session.findById("wnd[1]/tbar[0]/btn[2]").press
session.findById("wnd[0]/usr/tabsTABSTRIP_TABBL1/tabpUCOM1/ssub%_SUBSCREEN_TABBL1:ZFIR_BALGENERAL_NGL:0001/txtB-MONATE-HIGH").Text = Sheets("ROBOT").Range("B5")
session.findById("wnd[0]/usr/tabsTABSTRIP_TABBL1/tabpUCOM1/ssub%_SUBSCREEN_TABBL1:ZFIR_BALGENERAL_NGL:0001/txtV-MONATE-HIGH").Text = Sheets("ROBOT").Range("B5")
session.findById("wnd[0]/usr/tabsTABSTRIP_TABBL1/tabpUCOM1/ssub%_SUBSCREEN_TABBL1:ZFIR_BALGENERAL_NGL:0001/txtV-MONATE-HIGH").SetFocus
session.findById("wnd[0]/usr/tabsTABSTRIP_TABBL1/tabpUCOM1/ssub%_SUBSCREEN_TABBL1:ZFIR_BALGENERAL_NGL:0001/txtV-MONATE-HIGH").caretPosition = 2
session.findById("wnd[0]/tbar[1]/btn[8]").press
session.findById("wnd[0]/mbar/menu[0]/menu[3]/menu[1]").Select
session.findById("wnd[1]/usr/ctxtDY_FILENAME").Text = "BALANCE.XLSX"
session.findById("wnd[1]/usr/ctxtDY_FILENAME").caretPosition = 7
session.findById("wnd[1]/tbar[0]/btn[11]").press
session.findById("wnd[0]/tbar[0]/btn[15]").press
session.findById("wnd[0]/tbar[0]/btn[15]").press

1 Respuesta

Respuesta

¿Ya intentaste poner al final de tu macro Workbooks("BALANCE.XLSX").Close?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas