访问 - 报告打开,然后在打开表单关闭时隐藏

时间:2010-10-19 17:52:10

标签: ms-access vba reporting

我正在使用Access 2003,我有一个表单,可以收集报告的一些过滤条件。输入条件后,用户单击并单击“确定”按钮,然后使用以下VBA启动报告。

DoCmd.OpenReport "ReportName", acViewPreview

打开报告后,我发出以下命令来关闭收集过滤条件的表单......

Me.Close

表格会关闭但是我希望在前台保持打开的报告是隐藏的。知道为什么会这样吗?

4 个答案:

答案 0 :(得分:1)

当所有其他方法都失败,表单和报告在所需的时间到达前面时,您可以使用DoCmd.SelectObject显式地执行此操作:

  DoCmd.OpenReport "rptMyReport", acViewPreview
  DoCmd.SelectObject acReport, "rptMyReport"
  DoCmd.Close acForm, Me.Name

如果这不起作用,则会涉及其他内容,例如使用acDialog开关打开的表单或报表,或者将Modal或Popup属性设置为True的表单/报表。

或者,可能会有一个计时器在某个地方运行,导致某些事情发生并且正在抓住焦点。

答案 1 :(得分:1)

尝试将报告属性模式设置为是(在其他属性中)。

答案 2 :(得分:0)

关闭表单,然后打开报表工作?我猜它与焦点在物体之间来回移动有关。

修改

您的代码应如下所示:

Private Sub Command0_Click()

    'your code here

    DoCmd.Close acForm, Me.Name

    DoCmd.OpenReport "Report1", acViewPreview

End Sub

此外,没有其他人指出的本地关闭功能。

答案 3 :(得分:0)

我挣扎了几天。您似乎需要关闭当前窗口,然后在“打印预览”中打开报告。

我在报告中嵌入的数据透视图上有一个按钮。 (Access2010) 当我试图打印报告时 - 数据透视表上的任何过滤都没有转移到“DoCmd.Printout”命令。

有人建议我使用打开预览窗口,但它从未获得焦点。我不得不点击屏幕然后再回到打印预览窗口。下面的代码似乎纠正了这一点。

Private Sub Command1_Click()
DoCmd.Save
DoCmd.Close
DoCmd.OpenReport "R-MyReport", acViewPreview
相关问题