首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Microsoft Access报告中的每10行额外空间

Microsoft Access报告中的每10行额外空间
EN

Stack Overflow用户
提问于 2019-11-19 03:37:51
回答 3查看 234关注 0票数 0

为了便于阅读,我想在每个报告页上每10行增加一些额外的空间。

我尝试过在Detail_Format事件例程中计算行数和更改细节部分的高度,但这似乎没有起到任何作用。

然后,我尝试使用一个很高的虚拟字段,其中只有一个空间字符,每10行就显示一次(以及适当的CanShrink设置),额外的空间是可见的,但不在正确的行上。仪表显示事件例程计算正确,但效果似乎不同步。

但必须有一个直截了当的方法,对吧?有什么建议吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2020-03-01 18:18:25

根据UnhandledException回答中的信息,我就是这样做的,这实际上很容易做到。

步骤1:在细节线上添加一个所需高度的文本框。我认为必须为文本框和细节行设置CanShrink。

步骤2:将这些添加到事件处理中:

代码语言:javascript
复制
Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer)

    LineFormatEvents = LineFormatEvents + 1
    Me.txtExtraSpace.Visible = (LineFormatEvents Mod 10 = 0)

End Sub

Private Sub PageHeaderSection_Paint()

    LineFormatEvents = 0

End Sub

请注意,我使用的是Access 2016;我不知道返回多少个版本才能工作。

票数 0
EN

Stack Overflow用户

发布于 2019-11-19 07:06:15

据我所知,这样的结果只有在印刷版面上才有可能。

我就是这么做的:

该示例对每个页面的打印行进行计数,并使用Detail节的Detail事件通过设置报表的PrintSectionNextRecord属性来添加空行。

为了确保重新设置每个页面的计数器,并防止页面的第一行为空白,使用了PageHeaderSectionPageHeaderSection事件。

使用常量INSERT_BLANK_ROW_EVERY设置应插入空行的时间。

代码语言:javascript
复制
Const INSERT_BLANK_ROW_EVERY As Integer = 10

Dim insertBlankRowNext As Integer
Dim pageLineCount As Integer

Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
    If PrintCount = 1 Then pageLineCount = pageLineCount + 1

    Me.PrintSection = Not insertBlankRowNext
    Me.NextRecord = Not insertBlankRowNext

    insertBlankRowNext = (pageLineCount Mod INSERT_BLANK_ROW_EVERY = 0)
End Sub

Private Sub PageHeaderSection_Format(Cancel As Integer, FormatCount As Integer)
    pageLineCount = 0

    insertBlankRowNext = False
End Sub

关于PrintCount参数,微软写道:

Microsoft每次计算当前部分的PrintCount属性设置时都会增加OnPrint属性。在打印下一节时,Access将PrintCount属性重置为0。

请参阅这里的详细信息:Report.PrintCount性质

票数 2
EN

Stack Overflow用户

发布于 2019-11-19 07:27:47

您也可以添加假的假记录是空白的。

假设您的报表是基于查询(例如Query1 ),而不是使用它作为报表的RecordSource,您可以使用它作为表(Make )的源,并创建一个包含您想要的信息但具有额外记录(行)以提高可读性的表。

在将Query1“转储”到table..you之后,将其加载到RecordSet ...you中,然后根据您的需要迭代记录,并根据您的需要进行.AddNew记录。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58926268

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档