【发布时间】:2020-07-14 12:35:05
【问题描述】:
我编写了许多 Excel 宏,它们将脚本消息发送到 SAP 的 GUI 以执行查询并将结果下载到 Excel 文件中。我的问题是 SAP 会在导出完成后尝试打开文件。我想禁止这个动作,因为那时我的宏已经转移到进程的另一部分,打开文件会中断它。 我通过在创建 Excel 导出后立即重命名它来解决此问题。这只是在此过程中解决问题。当我的宏处理完成时,Excel 开始尝试打开文件,由于重命名,Excel 无法找到这些文件。我通常会收到此消息:
有没有办法通过 SAP 脚本或 SAP 中的环境设置来告诉 SAP 不要尝试打开导出?
谢谢
乔
【问题讨论】:
-
解决方案是在 SAP 端不尝试打开,或者在您的宏中关闭由 SAP 打开的 Excel 文件。您能否解释一下您在 SAP 端导出的操作,或者您的宏中有哪些代码,具体取决于您想问的问题?
-
这是我的困境。在 excel 方面,您不知道文件何时打开。有时它会等到宏过程完成,有时则不会。在这个当前正在开发的宏中,它一直等到结束,然后 Excel 将其中三个错误发送到屏幕上,用于 SAP 导出到 xlsx 的三个文件。优雅的解决方案是将 SAP GUI 应用程序设置为不尝试打开文件。如果您知道并可以分享它,那么您就是金子!
-
如果您更喜欢 SAP 方面的解决方案,问题是您没有描述足够的导出操作(“执行查询并将结果下载到 Excel 文件”)。所以,请再次解释一下宏在 SAP 端的作用(运行事务代码?单击按钮?按键?等)
-
我找到了解决方案。在 Excel 365 中,我使用宏打开电子表格的实例,然后使用空白电子表格打开第二个 Excel 实例。当 SAP 告诉 Excel 打开导出的电子表格时,它告诉 Excel 的新实例,而不是运行宏的实例。这不是一个优雅的解决方案,但它确实有效。