SAP GUI 7.4补丁12-不允许Excel自动打开

2020-08-15 14:09发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


@tybtech又名Will Hankins的问题回复,2019年1月22日

大家好,

我几次问过这个问题,但是找不到我可以使用的答案。 问题很简单。 从SAP GUI以电子表格格式导出数据时,将自动使用新导出的数据打开一个新的Excel实例。 我该如何阻止呢? 我知道一些解决方法,例如导出为本地文件,但是有时这些格式不正确。

我尝试更改Excel中的某些设置,但没有任何效果。 有什么建议吗?

谢谢

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


@tybtech又名Will Hankins的问题回复,2019年1月22日

大家好,

我几次问过这个问题,但是找不到我可以使用的答案。 问题很简单。 从SAP GUI以电子表格格式导出数据时,将自动使用新导出的数据打开一个新的Excel实例。 我该如何阻止呢? 我知道一些解决方法,例如导出为本地文件,但是有时这些格式不正确。

我尝试更改Excel中的某些设置,但没有任何效果。 有什么建议吗?

谢谢

付费偷看设置
发送
5条回答
小灯塔
1楼-- · 2020-08-15 14:41

当我尝试自动导出并另存为1000张表格的excel文件时遇到了相同的问题。 将表导出为ex​​cel文件后,SAP会在另一个Excel实例中自动打开下载的文件。 我无法在SAP中找到任何设置来关闭自动打开功能,因此我一直在使用以下代码退出Excel的其他实例,只剩下运行宏的Excel实例:

私有声明函数GetCurrentProcessId Lib" kernel32"()只要
 子closeOtherExcelInstances()
     昏暗作为对象
     Dim cProc作为变体
     Dim oProc作为对象
     昏暗的currentProcId
    
     currentProcId = GetCurrentProcessId
    
     设置oServ = GetObject(" winmgmts:")
     设置cProc = oServ.ExecQuery("从Win32_Process中选择*,其中NAME ='EXCEL.EXE'")
    
     对于cProc中的每个oProc
         如果oProc.ProcessId <> currentProcId然后
             调试打印oProc.Name,oProc.ProcessId
             errReturnCode = oProc.Terminate()
         万一
     下一个
 结束Sub 

更新08.04.2019

我在深入研究中找到可以解决此问题的方法。 像这样的东西也值得尝试:

子close_excel_instance_sap()

     '用于存储其他excel实例的变量'
     Dim xlApp作为对象

     '一些代码可以从SAP导出到excel
   
     '等待SAP打开的其他excel实例出现'
     Application.Wait Now + TimeSerial(0,0,5)
    
     '因为导出到excel文件后,sap将使用另一个Excel实例打开此导出的excel文件'
     "所以我们需要关闭该实例"
     "此代码将使我们能够访问Excel的其他实例"
     '仅当您输入导出的excel文件的完整路径时,它才起作用。 只是工作簿的文件名不起作用'
     设置xlApp = GetObject(REPLACE_WITH_FULL_PATH_TO_EXPORTED_WORKBOOK)。
    
     '对导出的工作簿执行某些操作'
     "关闭导出的工作簿"
     xlApp.Workbooks(1)。关闭False
     "关闭excel实例"
     xlApp.Quit
 结束子
 
lukcy2020
2楼-- · 2020-08-15 14:28

您好,它对我有用。 谢谢您的分享。

bbpeas
3楼-- · 2020-08-15 14:48

您好,

您能否评论 159499-SAP Desktop Office集成方面的问题

由于不再支持7.40,请考虑使用7.50 Gui。

请注意,预计下个月将发布7.60。 并且对7.50的支持即将结束。

注意 66971-支持的SAP GUI平台

# p#

我现在有SAP 7.50。 我也看着纸条。 在导出数据时是否还有其他阻止excel自动打开的建议?

Jude Bradley

nice_wp
4楼-- · 2020-08-15 14:41

您好,< rel =" nofollow" hraf=" https://people.sap.com/ducthanhnguyen"> Thanh Nguyen

您能帮我解决问题吗,我使用了您的最后一个代码,关闭了导出的excel工作表,但是代码关闭了所有打开的excel工作表

子出口()

昏暗的xlApp作为对象

Application.Wait(现在+ TimeSerial(0,0,10))

设置xlApp = GetObject(" D:\ SAP scripting \ COGS,Inv。Reconcile \ COGS.xlsx")。Application

xlApp.Workbooks(" COGS.xlsx")。关闭

结束子

'COGS已导出工作表,这是我需要关闭的工作表

谢谢

spaceman01
5楼-- · 2020-08-15 14:51

你好,

这是一个很好的解决方案! 我需要这样的东西才能在通过电子邮件发送文件后删除它。 我仍然收到一个奇怪的"抱歉,我们找不到工作簿xxx"的弹出窗口,但是过程进行得很顺利。

关于最后一个问题,我个人使用了xlApp.Workbooks(xlApp.Workbooks.count)。关闭

因为它始终是最后一个必须关闭的工作簿,并且此方法效果很好

最诚挚的问候,

奥吉尔

一周热门 更多>