Sub GetPasswordStats(sPW As String, ByRef lNum As Long, ByRef lU As Long, ByRef lL As Long, ByRef lS As Long)
Dim i As Long, ch As String, code As Long
For i = 1 To Len(sPW)
ch = Mid$(sPW, i, 1)
code = AscW(ch)
Select Case code
Case 48 To 57: lNum = lNum + 1
Case 65 To 90: lU = lU + 1
Case 97 To 122: lL = lL + 1
Case 33 To 47, 58 To 64, 91 To 96, 123 To 126, 161 To 191, 209, 241: lS = lS + 1 ' include extended punctuation and ñ
End Select
Next
End Sub