生成报告的倍数而不关闭其中一个报告

时间:2017-07-03 12:32:48

标签: vba ms-access

是否可以在MS Access中执行此操作?现在,如果我想生成相同的报告(具有不同的信息),我必须关闭我已经打开的报告。如果我点击“打开报告”,它将把我带到我已经生成的那个,而不是实际创建一个新的。我是否可以这样做,以便在新标签页中打开报告,同时保持前一个标签打开?

1 个答案:

答案 0 :(得分:1)

是的。

您需要一个模块级别的Collection对象来保存每个报告的参考。此外,您需要将报告的Has Module属性设置为才能在VBE中显示。它位于选项卡其他

在打开报告的表格中:

Option Compare Database
Option Explicit

Private mInstances As Collection

'Load
Private Sub Form_Load()
   Set mInstances = New Collection
End Sub

'Create report instance
Private Sub YourButtonName_Click()

    Dim rpt As Report_ReportName
    Set rpt = New Report_ReportName

    With rpt
        .Visible = True
        .Caption = rpt.Hwnd & ", opened " & Now()
    End With

    mInstances.Add rpt

    Set rpt = Nothing
End Sub

'Close
Private Sub Form_Close()
    Set mInstances = Nothing
End Sub
相关问题