无论如何确定调用报告的表单名称?我想在报告中写一些VBA代码,以确定从哪里调用报告。 我有Access 2003。
答案 0 :(得分:3)
您可以打开如下报告:
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
答案 1 :(得分:1)
除非你自己设置,否则这是不可能的。您可以写入变量,或者,如果表单保持打开状态,则将信息存储在表单中。
答案 2 :(得分:1)
一种方法是使用始终打开任何报告的report_caller类。它需要一个名为“openReport”的方法,该方法接受执行调用的表单的名称以及要打开的报表的名称。然后它可以有一个公共方法来允许报告获取已打开的表单的名称。