ACCESS数据库中的中文报表制作
数据库应用中很关键的数据输出形式是“报表”,ACCESS提供的报表向导,只针对国外的报表形式,就是线条较少的报表。而我们的中文报表,传统形式是线条较多的网格形式,所以,不能简单地通过向导来完成。现就本人使用ACCESS的经验,结合实例,谈一下如何在ACCESS数据库中制作我们的中文报表。
---- “产品销售利润明细表”的制作:
---- 1. 新建报表:选“自动报表:表格”,数据来源选表如XSLR表,确定后,产生一个简单的报表,在此基础上进行修改。
---- 2. 页面设置:边距方面,调整靠左、靠右来达到最大打印范围。页面方面,打印方向设置为纵向,纸张大小选自定义大小,宽度为1660(最大),长度为1100(一页纸长度),单位为0.01英寸。
---- 3. 版面设置:删除报表页眉、报表页脚。将页面页眉的内容删除。在页面页眉中插入对象,选MICROSOFT WORD文档,在WORD文档中画出表头,填上内容,注意,汉字之间要空一格,否则,到ACCESS报表输出时,汉字会出现乱码。对此OLE控件设置属性:背景样式为“透明”,边框样式为“透明”。在主体部件插入对象,选MICROSOFT WORD文档,在WORD文档中画出表格线方格,行宽可比表头行宽大一些,对此OLE控件设置属性:背景样式为“透明”,边框为实线,边框宽度为细线,设置各字段文字类型及大小,将各字段调整到方格内。
---- 4. 在DETAIL的FORMAT事件中写入代码,以完成对零值的屏蔽。代码如下:(A3至A13为数值型字段)
Private Sub Detail_Format
(Cancel As Integer, FormatCount As Integer)
If A3 = 0 Then
A3.Visible = False
Else
A3.Visible = True
End If
If A4 = 0 Then
A4.Visible = False
Else
A4.Visible = True
End If
If A7 = 0 Then
A7.Visible = False
Else
A7.Visible = True
End If
If A8 = 0 Then
A8.Visible = False
Else
A8.Visible = True
End If
If A9 = 0 Then
A9.Visible = False
Else
A9.Visible = True
End If
If A11 = 0 Then
A11.Visible = False
Else
A11.Visible = True
End If
If A12 = 0 Then
A12.Visible = False
Else
A12.Visible = True
End If
If A13 = 0 Then
A13.Visible = False
Else
A13.Visible = True
End If
End Sub