Самый быстрый способ тоже проверить ввод для пунктуаций в VBA

Так же, как название говорит, что самый быстрый способ проверить, содержит ли userinput знаки препинания за исключением /, я новичок в VBA и борюсь с этим в течение нескольких часов

2 ответа

  1. Посмотрите, содержит ли строка что-либо, что не от A до Z, от 0 до 9 или /

    hasPunctuation = astring like "*[!A-Za-z0-9/]*"
    
  2. Если все, что вам нужно, это буквы, цифры и косая черта, то это один из способов:

    Sub PuncCheck()
        Dim strng1 As String, strng2 As String
    
        strng1 = "qwerty12345678~!@#$%^&*()_+"
        strng2 = "qwerty12345678/"
        Call StringCheck(strng1)
        Call StringCheck(strng2)
    End Sub
    
    
    Sub StringCheck(sIN As String)
        Dim i As Long, sCH As String
    
        For i = 1 To Len(sIN)
            sCH = Mid(sIN, i, 1)
            If sCH Like "[0-9a-zA-Z]" Or sCH = "/" Then
            Else
                MsgBox "string has junk"
                Exit Sub
            End If
        Next i
        MsgBox "string has no junk"
    End Sub