无法使用 RunCode 从 Access 宏中调用我的 VBA 例程

Posted

技术标签:

【中文标题】无法使用 RunCode 从 Access 宏中调用我的 VBA 例程【英文标题】:Unable to call my VBA routine from an Access Macro using RunCode 【发布时间】:2014-03-02 14:43:50 【问题描述】:

我有一个运行一系列步骤并在 MS Acces.s 中输出报告的宏我希望使用表单中的变量命名此报告并存储在特定文件中。

我已经编写了 VB 代码来做同样的事情。

当我运行代码时它运行得很好,但是从宏它不起作用!

Private Sub FileLocator()
If [Forms]![Date Form].[Frame37] = 1 Then
MsgBox ("Working")
x = [Forms]![Date Form].List29
Else
x = [Forms]![Date Form].List25
End If

DoCmd.OutputTo acOutputReport, "41_Webtime less than 40 hours chart", "PDFFormat(*.pdf)", "C:\" & x & "\" & x & ".pdf", True, "", , acExportQualityPrint

End Sub

在我的宏中,我在 RunCode 中调用 Forms![Date Form]!FileLocator

【问题讨论】:

MS Access RunCode Macro cannot find my procedure 的可能重复项 不!将其更改为功能也不起作用。不显示任何错误。但只是不运行函数或子 该函数需要在“常规”VBA 模块中,而不是在特定形式的类模块中。在 Access 中执行 Create > Module,然后将函数作为 Public Function 移动到那里。 试过它不起作用:(再次没有错误。只是拒绝选择函数。它在一个单独的模块中以及我的表单类对象下。我如何调用模块函数?我目前正在使用 Forms![Date Form]!FileLocator in RunCode 【参考方案1】:

我自己也遇到了这个问题,原来你不能让模块名称与函数名称相同。

希望这也是你的问题。

【讨论】:

以上是关于无法使用 RunCode 从 Access 宏中调用我的 VBA 例程的主要内容,如果未能解决你的问题,请参考以下文章

access 2010找不到我的VBA函数?

MS Access - 无法从 RunMacro 运行模块中的子程序

Access 模板宏中的 SaveRecord 错误

在 Microsoft Access 2010 数据宏中使用变量数据

宏中的 Access 2010 SQL 错误

在 ms Access 数据宏中从另一个表中获取数据