【问题标题】:Access and VBA - default value of field is null?访问和 VBA - 字段的默认值为空?
【发布时间】:2015-07-27 17:42:59
【问题描述】:

我正在使用 Microsoft Access 制作表单,并且正在尝试为字段制作 AfterUpdate 事件过程。我需要知道该字段的值是否为默认值(或者是否为空)。我读到 VBA 中一个字段的默认值是 Null 所以我做了这个:

Private Sub EB1_10_Val1_AfterUpdate()
    If Me.EB1_10_Val1.Value = Null Then
        MsgBox "hello"
    End If
End Sub

这不起作用,所以当用户更新字段中的值然后删除它(清空字段)时,我尝试了这个

Private Sub EB1_10_Val1_AfterUpdate()
    If Me.EB1_10_Val1.Value = Empty Then
        MsgBox "hello"
    End If
End Sub

消息永远不会弹出。另一方面,我尝试将字段的默认值更改为 0,但它不起作用。在表单视图中默认情况下,0 不会出现在字段中。

【问题讨论】:

  • 尝试检查isnull(Me.EB1_10_Val1.Value)isEmpty(Me.EB1_10_Val1.Value)
  • 顺便问一下:Me.EB1_10_Val1是什么字段?

标签: vba ms-access


【解决方案1】:

你可以用这个表达式检查字段是否为空:

If IsNull(Me.EB1_10_Val1.Value) Then

【讨论】:

    【解决方案2】:

    除了mielk提供的解决方案外,您还可以使用NzIif函数将Null替换为默认值。

    用法:

    myVal = Nz(Me.SomTextBox, 0)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多