【问题标题】:MS Access Report can't enter text in unbound textboxesMS Access Report 无法在未绑定的文本框中输入文本
【发布时间】:2020-07-10 15:48:11
【问题描述】:

我在 MS Access 2016 中有一份报告,其中 Record Source 设置为我创建的查询。

我已绑定文本框以正确显示查询中的数据。

当我尝试使用未绑定的文本框时,问题就出现了。我有一个未绑定的文本框,我想在其中输入自定义值,比如名称。当我在文本框中键入时,文本会正确显示。然而,一旦焦点离开文本框,文本就会消失。

为什么会发生这种情况,我该如何做到这一点,以便在我关闭/重置报告之前保持文本?

【问题讨论】:

    标签: ms-access ms-access-reports


    【解决方案1】:

    与表单不同,报表不是交互式的。在 ReportView 中可以进行一些有限的交互(按钮单击、右键单击过滤器菜单),并且在 PrintPreview 中可以使用右键菜单进行导出选项。

    在表单上的未绑定文本框中输入文本。在报表文本框中有表达式 ControlSource 引用表单上的文本框。

    =Forms!formname.textboxname

    然后打开报告。

    或者可以通过引用表单文本框的 OpenReport(或 OpenForm)的 OpenArgs 参数传递数据。
    DoCmd.OpenReport "reportname", acViewPreview, , , , Me.textbox
    然后报表文本框中的表达式可以从 OpenArgs 属性中提取值。
    =[OpenArgs]

    无论哪种方式,输入都是通过表单上的控件。

    另一种方法是在查询中使用弹出式输入作为报告 RecordSource。
    SELECT table.*, [enter name] AS F1 FROM table;
    将文本框绑定到字段 F1。 当报告打开时,会弹出输入框,这个输入框会显示在文本框中。

    【讨论】:

    • 好的,很高兴知道。不幸的是,您不能在报告本身中添加临时值。在文本框ControlSource 中引用表单字段本身的解决方案对我有用。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多