在访问中从VBA调用嵌入式宏

时间:2012-10-10 18:15:26

标签: ms-access macros

我有一个宏分配给表单中按钮的onClick事件。如何以编程方式调用此宏?

我试过

btnName_Click

但这不起作用,因为没有名为btnName_Click()的函数......显然:)

我可以通过Me.btnNewRecord.OnClick访问onClick会员,但看不到运行宏的方法。

1 个答案:

答案 0 :(得分:2)

经过广泛搜索后,我认为不可能引用嵌入式宏,并运行它。您可以查看宏的XML,但我知道无法运行它,甚至无法访问它,而是将XML存储为字符串。可能的解决方法是将所有宏转换为VBA。要做到这一点:

  1. 在设计视图中打开表单。
  2. 单击“将表单的宏转换为Visual Basic”
  3. 现在,您应该可以使用问题中显示的btnName_Click来调用按钮的代码。显然,如果你这样做,你将牺牲使用宏的优势(即有限的功能而无需用户信任你的数据库)。


    原始答案,不适用于嵌入式宏:

    使用DoCmd.RunMacro

    示例:

    Docmd.RunMacro(macroname) 
    

    其中macroname是表示宏名称的字符串。