【发布时间】:2010-11-18 22:55:26
【问题描述】:
是否可以确定调用报告的表单名称?我想在报告中编写一些 VBA 代码来确定从哪里调用报告。 我有 Access 2003。
【问题讨论】:
是否可以确定调用报告的表单名称?我想在报告中编写一些 VBA 代码来确定从哪里调用报告。 我有 Access 2003。
【问题讨论】:
您可以这样打开报告:
DoCmd.OpenReport "reportFoo", acPreview, , , , Me.Name
报告中有这样的内容:
Private Sub Report_Open(Cancel As Integer)
If "" <> Me.OpenArgs Then
MsgBox Me.OpenArgs ' display caller form's name
End If
End Sub
【讨论】:
除非您自己设置,否则这是不可能的。您可以写入一个变量,或者,如果表单保持打开状态,则将信息存储在表单上。
【讨论】:
一种方法是创建一个始终打开任何报告的 report_caller 类。它需要一个名为“openReport”的方法,该方法接受进行调用的表单的名称和正在打开的报表的名称。然后它可以有一个公共方法来允许报表获取打开的表单的名称。
【讨论】: