【问题标题】:Check if field contains any numbers?检查字段是否包含任何数字?
【发布时间】:2013-05-09 21:50:27
【问题描述】:

您好,我正在尝试编写一些 VBA,以便它检查我的一个文本框是否包含数字。该文本框称为:CustomerName。这是我目前使用的代码:

Function HasNumber(strData As String) As Boolean
    Dim iCnt As Integer

    For iCnt = 1 To Len(strData)
        If IsNumeric(Mid(strData, iCnt, 1)) Then
            HasNumber = True
            Exit Function
        End If
    Next iCnt

End Function

Private Sub CustomerName_AfterUpdate()
If HasNumber(CustomerName) Then
    MsgBox "Only letters are allowed for this field."
    Exit Sub
End If

End Sub

由于某种原因,当我在此字段中输入数字然后单击它(即更新它)时,它不会出现 msgbox 或任何东西。我该怎么做才能解决这个问题?

【问题讨论】:

    标签: forms validation vba ms-access


    【解决方案1】:

    我会在表格的CustomerName 列或文本框的验证规则上使用此验证规则,而不是使用一些自定义代码:

    Not Like "*[0-9]*"
    

    请参阅此处以获取 validation rules 的参考。

    【讨论】:

      【解决方案2】:

      试试这样:

      If HasNumber(CustomerName.Text) Then
      

      【讨论】:

        猜你喜欢
        • 2018-07-25
        • 1970-01-01
        • 1970-01-01
        • 2020-03-17
        • 1970-01-01
        • 1970-01-01
        • 2013-08-11
        • 2015-09-14
        • 2023-03-24
        相关资源
        最近更新 更多