Private Function CheckPassword(ByVal sPassword As String) As Boolean
Const SpecialChars = "!@#$%^&*()-+\|=" '这里列出所有的特殊字符
Dim iLen As Integer
Dim iLoop As Integer
Dim sChar As String
Dim bHasSpecial As Boolean
Dim bHasNumber As Boolean
Dim bHasLower As Boolean
Dim bHasUpper As Boolean
iLen = Len(sPassword)
If iLen < 8 Or iLen > 16 Then
CheckPassword = False
Exit Function
End If
bHasSpecial = False
bHasNumber = False
bHasLower = False
bHasUpper = False
For iLoop = 1 To iLen
sChar = Mid(sPassword, iLoop, 1)
If InStr(SpecialChars, sChar) > 0 Then bHasSpecial = True
If sChar >= "0" And sChar <= "9" Then bHasNumber = True
If sChar >= "a" And sChar <= "z" Then bHasLower = True
If sChar >= "A" And sChar <= "Z" Then bHasUpper = True
Next iLoop
CheckPassword = bHasSpecial And bHasNumber And bHasLower And bHasUpper
End Function
Private Sub Form_Load()
Debug.Print CheckPassword("123")
Debug.Print CheckPassword("123abcDE")
Debug.Print CheckPassword("123abcDE!")
End
End Sub