访问 2016 表单按钮以根据当前记录打开报表
Access 2016 form button to open report based on current record
我正在尝试在表单上创建一个按钮,该按钮将打开仅包含当前记录的报告。
我做了以下事情:
- 创建了一个按钮
- 为单击创建事件过程(它打开宏模式而不是 Visual Basic)
- 用各种条目修改了 Where 条件
由于设置是宏模式,我不知道如何post宏代码,所以我将其作为列表输入。
- OpenReport
- 报告名称: 奖项类别 - 单曲
- 查看:打印预览
- 过滤器名称:空白
- Where Condition = [Registrants]![EventName]=[Me].[EventName]
- Window模式:空白
预期结果 - 单击按钮打开仅显示当前记录的报告
实际结果 - 单击按钮打开“输入参数值”对话框,要求输入 Me.EventName 的值。当我输入当前事件名称时,报告打开并显示正确的记录。
我建议将宏的 Where Condition 更改为:
[Registrants]![EventName]=[Forms]![YourFormName]![EventName]
(将 YourFormName
更改为您的表单名称)
您当前的宏失败,因为 Me
是一个 VBA 关键字(指的是当前代码正在执行的 class 的一个实例),因此不适用于这个语境。
我正在尝试在表单上创建一个按钮,该按钮将打开仅包含当前记录的报告。
我做了以下事情:
- 创建了一个按钮
- 为单击创建事件过程(它打开宏模式而不是 Visual Basic)
- 用各种条目修改了 Where 条件
由于设置是宏模式,我不知道如何post宏代码,所以我将其作为列表输入。
- OpenReport
- 报告名称: 奖项类别 - 单曲
- 查看:打印预览
- 过滤器名称:空白
- Where Condition = [Registrants]![EventName]=[Me].[EventName]
- Window模式:空白
预期结果 - 单击按钮打开仅显示当前记录的报告
实际结果 - 单击按钮打开“输入参数值”对话框,要求输入 Me.EventName 的值。当我输入当前事件名称时,报告打开并显示正确的记录。
我建议将宏的 Where Condition 更改为:
[Registrants]![EventName]=[Forms]![YourFormName]![EventName]
(将 YourFormName
更改为您的表单名称)
您当前的宏失败,因为 Me
是一个 VBA 关键字(指的是当前代码正在执行的 class 的一个实例),因此不适用于这个语境。