通过将文本框的“Can Shrink”属性设置为“Yes”,然后将以下代码添加到On Format
Detail 带的事件中,我能够创建您描述的效果
Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)
Me.lblAccounting.Visible = Not IsNull(Me.txtAccounting.Value)
Me.txtAccounting.Visible = Not IsNull(Me.txtAccounting.Value)
Me.lblFinance.Visible = Not IsNull(Me.txtFinance.Value)
Me.txtFinance.Visible = Not IsNull(Me.txtFinance.Value)
Me.lblMarketing.Visible = Not IsNull(Me.txtMarketing.Value)
Me.txtMarketing.Visible = Not IsNull(Me.txtMarketing.Value)
Me.lblOperations.Visible = Not IsNull(Me.txtOperations.Value)
Me.txtOperations.Visible = Not IsNull(Me.txtOperations.Value)
End Sub
对于测试数据
ID Accounting Finance Marketing Operations
-- ---------- ------- --------- ----------
1 a1 f1 o1
2 f2 m2
我在Print Preview中得到以下结果。我正在使用 Access 2010,这些On Format
调整显然在“报告视图”中不起作用,但在打印预览中我得到:
您会注意到,如果其中一些被“挤出” ,其余的框可能不会完全匹配。如果您的报告可以在文本框本身没有边界的情况下进行,那么这种差异几乎不会引起注意。否则,您将不得不调整布局,直到它看起来不错(或至少“足够好”)。这就是数据库报告的方式:花半个小时让这个东西工作,然后再花两个小时摆弄它,让它“看起来不错”。