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