【问题标题】:VBA Access Textbox returning Null ValueVBA访问文本框返回空值
【发布时间】:2015-03-08 04:56:35
【问题描述】:

我有一个 VBA Access 用户表单。在这个用例中有一个名为txtSearch_POBOX 的文本框。我正在尝试使用以下代码获取其价值:

Private Sub txtSearch_FirstName_Change()
MsgBox ([Form_Client List].txtSearch_POBOX.Value)
End Sub

但这总是返回NULL。即使文本框中有一个值。有什么想法吗?

【问题讨论】:

    标签: ms-access vba ms-access-2010


    【解决方案1】:

    你的参考是错误的。它应该是:

    MsgBox Forms![Client List]!txtSearch_POBOX.Value
    

    因为它可能是空的,你应该使用:

    MsgBox Nz(Forms![Client List]!txtSearch_POBOX.Value)
    

    【讨论】:

      【解决方案2】:

      请记住,如果您想在数字化时截取文本框值,直到您“验证”内容更改(例如失去焦点),.Value 属性才会更新。

      例如,我使用文本框制作子掩码的运行过滤器:我想在数字化时过滤子掩码。 为此,您需要使用 .Text 属性。

      在以下示例中,我创建了一个发布者列表的运行过滤器:

      Private Sub txtNameFilter_Change()
      On Error Resume Next
          Dim strFilter As String
      
          If Not IsNull(Me.txtNameFilter.Text) Then
              strFilter = "Publisher LIKE '*" + Me.txtNameFilter.Text + "*'"
              Me.Filter = strFilter
              Me.FilterOn = True
              Me.txtNameFilter.SelStart = Len(Me.txtNameFilter.Text)
          End If
      End Sub 
      

      再见 巫师

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-09-07
        • 2019-07-29
        • 1970-01-01
        • 1970-01-01
        • 2020-10-26
        • 2016-10-17
        • 2011-04-24
        相关资源
        最近更新 更多