Ms access 如何以打印预览格式查看嵌入表单中的报表

Ms access 如何以打印预览格式查看嵌入表单中的报表,ms-access,vba,ms-access-2010,Ms Access,Vba,Ms Access 2010,我想知道如何确保嵌入表单中的报表在表单打开时更新,以便在打印预览模式下,报表是新的。特别是,我使用这个报告来显示我使用矩形形状创建的条形图,矩形形状根据来自绑定到报告的表的字段中的值而变化。不幸的是,尽管我将嵌入报告的默认视图设置为打印预览,并在“on format”事件中更改矩形长度设置的代码,但该代码不会更新报告。可能需要以其他方式触发on format事件。下面是我的代码。谢谢 Private Sub Corpo_Format(Cancel As Integer, FormatCount

我想知道如何确保嵌入表单中的报表在表单打开时更新,以便在打印预览模式下,报表是新的。特别是,我使用这个报告来显示我使用矩形形状创建的条形图,矩形形状根据来自绑定到报告的表的字段中的值而变化。不幸的是,尽管我将嵌入报告的默认视图设置为打印预览,并在“on format”事件中更改矩形长度设置的代码,但该代码不会更新报告。可能需要以其他方式触发on format事件。下面是我的代码。谢谢

Private Sub Corpo_Format(Cancel As Integer, FormatCount As Integer)

Dim sngLunghezza As Single

    sngLunghezza = retTotale.Width * txtMedia / 100
    retPercentuale.Width = sngLunghezza

  If txtMedia < 50 Then
             retPercentuale.BackColor = vbRed

    Else
        retPercentuale.BackColor = vbGreen

  End If
Private Sub-Corpo_格式(取消为整数,FormatCount为整数)
昏暗的Snglungheza是单身
SNGLUNGHESZA=净总宽度*txtMedia/100
再百分比宽度=SNGLUNGHESZA
如果txtMedia<50,则
retPercentuale.BackColor=vbRed
其他的
retPercentuale.BackColor=vbGreen
如果结束

End Sub

我能提供的最好的方法是:我认为您编写代码的事件没有被触发,一个建议可能是将您的代码放在报表的打开或加载事件中。

不,这不起作用,因为每个记录都会被格式化,好像“txtMedia”表示的值对所有记录都是相同的,显示所有记录的相同条形图。我需要每个记录的“txtMedia”值不同,为每个记录创建一个长度不同的条形图。奇怪的是,在打印预览中,单独运行报表(在表单之外)时,报表效果良好。只有当报表嵌入到表单中时,问题才会出现。