我正在尝试生成一个报告,其源是一个表单,并且只打印非空的字段。
为此,每个字段都有两个文本框。它们都是resizealbe(可以缩小/增长)。 第一个文本框用于标题,其来源是
=IIf([record] Is Null,"","Caption:")
第二个是记录值本身。如果record为null,则两个文本框的值都为“”并且为null,它们不会出现,也不会占用表单中的任何空格。
两个问题:
答案 0 :(得分:1)
这仅适用于“打印预览”,而不适用于MS Access 2010报表或布局视图。您需要在控件上收缩才能缩小间隙。在Access 2010中,“* _Label”是分配给控件标签的默认名称。
Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
Dim ctl As Control
For Each ctl In Me.Controls
If ctl.ControlType = acLabel And ctl.Name Like "*_Label" Then
ctl.Visible = Not IsNull(ctl.Parent)
''Bound checkboxes are never null, so hide false
If ctl.Parent.ControlType = acCheckBox Then
ctl.Visible = ctl.Parent
ctl.Parent.Visible = ctl.Parent
End If
End If
Next
End Sub