【问题标题】:Calling Access Macro from VB.NET problems从 VB.NET 调用访问宏问题
【发布时间】:2011-03-20 01:25:17
【问题描述】:

我像这样从 vb.net 调用 Access 宏:

Acc.DoCmd.RunMacro("Macro1")

Access 中的宏有许多 OpenQuery 和 Msgbox,最后有一条消息说“数据完成”。

当我从 vb.net 执行宏时,它会显示数据完成消息,然后完成。但是,当我分析表格以查看是否附加了数据时,它没有。

当我在 Access 中运行相同的宏时,它运行良好。它确实显示了许多消息,例如“您将要运行将修改查询中的数据的附加查询”,我点击是并且确实需要更长的时间,但它确实做到了。 在 VB.NET 中,我得到的唯一消息是最终的消息框。

我也试过了:

Acc.SetOption("Confirm Action Queries", 0)
Acc.SetOption("Confirm Document Deletions", 0)
Acc.SetOption("Confirm Record Changes", 0)

在从 VB.NET 中执行宏之前,但无济于事。还是一样。

有办法解决吗?

编辑:我的 Access DB 是 mdb 文件

【问题讨论】:

  • 这看起来是一种糟糕的做事方式。为什么不直接运行 SQL 命令,而不是使用自动化 Access?

标签: vb.net vba ms-access


【解决方案1】:

我认为问题在于宏中的 UI 消息: 它确实显示了许多消息,例如“您将要运行将修改查询中的数据的附加查询”,我点击是

Access 中有一个选项可以禁止这些确认查询,您需要在 .mdb 文件中禁止它们。看起来试图从 VB 中抑制它们是行不通的。

【讨论】:

    猜你喜欢
    • 2016-08-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多