导出到xps或pdf时,MS Access Report_Page事件不会执行

时间:2013-06-23 21:56:08

标签: vba ms-access-2010

使用MS Access 2010,我有一个简单的表格,其中包含有关办公楼中房间的基本信息以及我希望在该房间的表单和/或报告上显示的图像的路径+文件名。有时,但并非总是如此,通常在房间没有图像条目时,会出现不正确的图像。

我已通过在Form_Current事件中添加逻辑来更正此表单。但是在Report_Current和Report_Page事件中添加相同的逻辑时,我会得到随机结果。

打印预览似乎会正确显示图像,但将打印输出到XPS或PDF会忽略Report_Page和Report_Current代码,这与下面的Form_Current代码相同。

Private Sub Form_Current()

    Me.ImageHolder.Picture = ""
    If (Me.ImageFilePath.Value <> "") and Dir(Me.ImageFilePath.Value) <> "" Then 
        Me.ImageHolder.Picture = Me.ImageFilePath.Value
    Else
        Me.ImageHolder.Picture = ""

End Sub

1 个答案:

答案 0 :(得分:0)

我认为Report_PageReport_Current不适合您的代码。特别是Current事件与报告中的Focus有关,在打印(或保存)时不适用。页面事件发生得太晚,就在实际打印页面之前。

假设每个记录的详细信息(包括图片)都在报告的“详细信息”部分中,然后双击灰色的详细信息栏以显示其属性。我怀疑OnFormat是你需要的事件。有OnPrint但我相信这可能为时已晚。 (还有OnPaint,但我记得,这是非常具体的,并不经常单独使用。)