【问题标题】:Print Preview to Current record on form access在表单访问时打印预览到当前记录
【发布时间】:2018-01-08 21:51:20
【问题描述】:

我的表单上有一个按钮,用于创建报告的打印预览。我无法在与当前表单相同的记录上打开它。相反,它会打开第一条记录。他们都在同一个查询中。我尝试了宏和VBA。我是新手,无法理解如何让我的记录保持不变并打印预览只是我在表单中打开的记录

这是我的 VBA 代码,我收到错误提示“此错误没有消息”

    DoCmd.OpenReport "Moisture", acViewPreview, , "[Order Number]= " & [Order Number]

【问题讨论】:

  • 此代码是否位于具有 [Order Number] 字段的表单后面?代码在什么事件中?您是否要打开刚刚创建的 ws 记录报告?
  • 是的,它在带有该字段的表单后面。事件发生在单击按钮上。记录的一部分将刚刚创建。它提取了正确的信息,但不在正确的记录上,而是列出了所有信息
  • Order Number的数据类型是什么?字符串还是数字?
  • 如果 [Order Number] 是文本字段,则参数需要文本分隔符。我使用撇号:"[Order Number] = '" & [Order Number] & "'"。但是,可能需要首先运行将记录编辑提交到表的代码。此外,在命名约定中建议不要使用空格或标点符号/特殊字符(下划线除外)。

标签: ms-access filter report where-clause record


【解决方案1】:

试试:

DoCmd.OpenReport "Moisture", acViewPreview, , "[Order Number]=""" & [Order Number] & """"

【讨论】:

    【解决方案2】:

    这可能不是最好的方法,但我通过为仅显示在我的表单中打开的记录源的报告创建查询解决了这个问题。我在查询中的主键条件中传递了以下内容。

       [Forms]![NameOfForm]![PrimaryKey] 
    

    因此只显示在表单中打开的主键的特定字段,没有其他内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-11-27
      • 1970-01-01
      • 2014-03-15
      • 2018-08-30
      • 1970-01-01
      • 2016-06-13
      • 1970-01-01
      相关资源
      最近更新 更多