Access动态设置报表的记录源

2017-11-08 15:50:00
黄善超
原创
109

在Access窗体中可以打开窗体后,给窗体设置记录源或者给控件赋值。

但是在报表中是不允许的。如下面的语句:

DoCmd.OpenReport "XX", acViewPreview        '打开报表的预览窗口
Report_XX.RecordSource = strSQL

允许代码在执行时显示“在打印预览时或打印开始后,不能设置 属性”


看到这样的提示。你可能会想,是否可以先以设计视图打开报表,设置了记录源后再用预览视图打开呢?

这方法是可以的。但是生成mde(accde)就会出错了。因为mde(accde)是不允许打开设计视图的。



解决办法:

1、在报表的OPEN事件中设置记录源或者赋值

Private Sub Report_Open(Cancel As Integer)
    Me.RecordSource = "select * from 订单表 where 订单号=2"
End Sub


2、窗体按钮直接使用 DoCmd.OpenReport "KK", acViewPreview 即可








    分享