访问报告中的绑定组合框为空

Posted

技术标签:

【中文标题】访问报告中的绑定组合框为空【英文标题】:Bound combobox goes empty in Access Report 【发布时间】:2020-03-27 18:37:28 【问题描述】:

我有一个带有组合框的访问表单,该组合框绑定到选择 2 个字段的查询。通过在组合框的属性表中设置以下内容,我设法让组合框显示查询的第二列:列号 = 2(第一列宽度 = 0); Bound Column = 1(因为它包含另一个查询的值输入)。

我的问题是,当我打开表单时,从组合框中选择一个值,然后将表单另存为报告,组合框变为空白!在报告中,我没有找到之前为表单中的组合框选择的值。

我该如何解决?

【问题讨论】:

为什么要将表单保存为报告,具体是如何做到的? 为了清楚起见需要编辑问题 June7 通过转到文件选项卡,另存为,而不是选择表单,选择报告。这是一种从表单开始保存报告的方法。 【参考方案1】:

您似乎希望让最终用户能够打印他们在数据输入表单上看到的内容。但是在访问中,打印功能附加到报告中。所以我们需要一个看起来像数据输入表单的报告,以及从数据输入表单访问报告的某种方式。所以添加一个打印按钮或一些可以打开报告的按钮。报告需要看起来像表单,因此将表单保存为报告是一个很好的起点,但随后某些组合框不会显示。跳到最后解释原因。所以我们必须手动设置问题报告组合框。一种方法是在报表打开时将参数传递给报表:

Private Sub PrintButton_Click()
'look up DoCmd.OpenReport if you want to do something other than print preview
DoCmd.OpenReport ReportName:="ReportSavedFromForm", OpenArgs:=OriginalformComboBox.Value, View:=acViewPreview
End Sub  

Private Sub ReportSavedFromForm_Load()
reportCombobox = Me.OpenArgs
End Sub

关于为什么组合框为空白或卡在第一个值上,根据以下链接,报告不应该用于编辑数据。 https://social.msdn.microsoft.com/Forums/office/en-US/14c6ec9a-53bd-4546-ba0e-597c41ca7cce/combo-box-drop-down-arrow-invisible-on-reports?forum=accessdev\

所以组合框下拉箭头不会按设计出现。我在 Office 2016 中对此进行了测试,如果组合框未绑定,则在报告页眉和报告页脚部分中,组合框将显示为空白。如果组合框绑定到一个 ID,则组合框的行为会有所不同。它显示第一条记录,但只是一个没有下拉箭头的文本框,因此只显示第一条记录。但是,在详细信息部分中,虽然您仍然没有下拉箭头,但组合框仍可用于将 id 替换为更友好的值

【讨论】:

感谢您的回复。实际上,我在报告的组合框中看到了下拉箭头。但这不是重点。我不需要报告来编辑数据,只需要我的表格的可打印版本,因为报告比表格有更多的打印选项。问题是当我在表单的组合框中选择一个值后生成报告时,该值不会出现。有关更多详细信息,Form 中的组合框已绑定到查询。希望我已经清楚了。 为什么在按住 Print Screen 的同时不使用 ALT?然后,您可以将图像粘贴到您喜欢的绘图程序中或直接粘贴到您的文字处理程序中。 我宁愿构建一个更结构化的解决方案,因为我不会是该应用程序的唯一用户。 传递参数应该是你要找的。我已经相应地调整了答案

以上是关于访问报告中的绑定组合框为空的主要内容,如果未能解决你的问题,请参考以下文章

Datagridview 组合框为空

根据多个组合框过滤查询,但如果组合框为空,则显示所有记录,包括空,

如果组合框为空,combobox.removeAllItems 方法会抛出异常吗? [关闭]

通过连续形式访问循环

如何在组合框中返回未绑定列的值

在 MS Access 中根据表单中的多个组合框查询所有记录