【问题标题】:An IF steatment on a control source关于控制源的 IF 语句
【发布时间】:2019-07-02 18:13:52
【问题描述】:

有没有办法在这个控制源上包含一个 if 语句?

=DCount("*","[SOBRANTES]","[ID]=" & [Forms]![formedita]![ID])

类似的东西 =if not new.record DCount("*","[SOBRANTES]","[ID]=" & [Forms]![formedita]![ID])

【问题讨论】:

  • 表格或报表上的表达式在哪里?在子报告中?你发现 IIF 函数了吗?
  • 表达式是包含子表单的表单内的文本框源。我会检查 iif 函数

标签: vba forms ms-access if-statement


【解决方案1】:

您可以通过表单的Form 属性访问NewRecord 属性(我知道这听起来很奇怪)。它将是 True 或 False。您可以将此值用作 IIf 函数的测试条件。

=IIf([Forms]![formedita].Form.NewRecord,"New",
    DCount("*","[SOBRANTES]","[ID]=" & [Forms]![formedita]![ID]))

如果表达式在子表单中,那么您需要引用 Parent 对象,例如 [Forms]![formedita].Form.Parent.Form.NewRecord[Forms]![formedita].Parent.Form.NewRecord

但您可以通过在上述 IIf 公式中仅引用 Forms!parent_form_name 来简化此操作。

【讨论】:

  • 表达式在主窗体中。完美的!非常感谢您的帮助。谢谢!
  • 确实非常好用。特别是在新记录时显示新
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-17
  • 2016-10-15
  • 1970-01-01
  • 2015-02-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多