【问题标题】:Opening Excel workbook containing macros (.xlsm) using ADO and getting macros to run使用 ADO 打开包含宏 (.xlsm) 的 Excel 工作簿并让宏运行
【发布时间】:2016-05-15 21:20:30
【问题描述】:

我一直在使用 ADO 处理许多 Excel .xls 和 .xlsx 工作簿,没有任何问题。最近我尝试处理一个 .xlsm 工作簿以加载到 Access 数据库。该工作簿包含多个宏,每次用户打开桌面版 Excel 时都会运行这些宏。宏用“今天”数据更新“昨天”数据。不幸的是,当我以编程方式阅读工作簿时,ADO 正在返回“昨天”数据。这对我来说意味着当我用 ADO 打开工作簿时宏没有运行。有什么建议。希望我不需要重写代码来打开 Excel 实例来处理工作簿。

【问题讨论】:

    标签: excel ado


    【解决方案1】:

    ADO 仅访问保存在工作簿中的数据。在 Excel 中打开工作簿时,vba(或任何其他)代码不会动态执行任何操作。 Excel 宏只能在工作簿在应用程序界面中打开时运行。

    您的流程需要复制宏正在执行的操作以更新工作表数据,或者是的,确实,您需要首先在 Excel 环境中打开工作簿并执行宏,然后保存更改到工作簿。

    【讨论】:

    • 辛迪,谢谢!我怀疑这将是答案,但我需要验证它。
    猜你喜欢
    • 2015-06-02
    • 2018-07-27
    • 2016-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-12
    • 1970-01-01
    相关资源
    最近更新 更多