文本框限制错误Excel VBA

Muh*_*utt 4 excel vba excel-vba

如果文本框为空,我按退格键,它会崩溃并突出显示行

TB1 =左(TB1,Len(TB1) - 1)

我可以改变什么来阻止崩溃

Private Sub TB1_Change()
Dim strStrings As String, LastLetter As String
Application.EnableEvents = False
LastLetter = Right(TB1, 1)
strStrings = ","
If InStr(1, strStrings, LastLetter) > 0 Then
    MsgBox LastLetter & " not allowed"
    TB1 = Left(TB1, Len(TB1) - 1)
End If
Application.EnableEvents = True
Run Code Online (Sandbox Code Playgroud)

结束子

它是一个文本框,其中","受到限制.

Har*_*4HR 6

使用以下子.

Private Sub TB1_Change()
On Error GoTo HarunErrHandler
Dim strStrings As String, LastLetter As String

    If TB1 = "" Then
        Exit Sub
    End If

    Application.EnableEvents = False
        LastLetter = Right(TB1, 1)
        strStrings = ","
        If Val(InStr(1, strStrings, LastLetter)) > 0 Then
            MsgBox LastLetter & " not allowed"
            TB1 = Left(TB1, Len(TB1) - 1)
        End If
    Application.EnableEvents = True

Exit Sub
HarunErrHandler:
MessageBox = MsgBox("Error Number: " & Err.Number & vbCrLf & Err.Description, vbCritical, "Error")
End Sub
Run Code Online (Sandbox Code Playgroud)