Folosirea Len pentru a verifica lungimea unui șir

Pentru a afla cât de lung este șirul, se folosește funcția Len. Sintaxa pentru funcția Len este simplă:

Len(string)

Aici, string poate fi orice expresie validă de tip string. (Dacă string este Null, Len returnează tot Null.)

Funcția Len poate fi folosită pentru a verifica dacă datele introduse de utilizator într-un câmp text dintr-un formular are lungimea corectă. De exemplu, numărul unui telefon - 10 cifre.

Procedura VerificaParola de mai jos folosește funcția Len pentru a verifica dacă parola introdusă de utilizator este destul de dificil de ghicit, dar nu prea lungă.

Testarea lungimii parolei folosind funcția Len

1. Sub VerificaParola()
2.   Dim strParola As String
3.   AltaParola:
4.   strParola = InputBox _
    ("Introduceti parola pentru a impiedica modificarea acestui element:" _
, "Introducere parola ")
5.   If Len(strParola) = 0 Then
6.      End
7.   ElseIf Len(strParola) < 6 Then
8.      MsgBox "Parola aleasă este prea scurta." _
          & vbCr & vbCr & _
          "Alegeți o parolă care să aiba intre 6 si 15 caractere.", vbOKOnly + vbCritical, "Parola prea scurta"
9.      GoTo AltaParola
10.  ElseIf Len(strParola) > 15 Then
11.        MsgBox "Parola aleasa este prea lunga." _
              & vbCr & vbCr & _
              " Alegeți o parolă care să aiba intre 6 si 15 caractere.", vbOKOnly + vbCritical, " Parola prea lunga "
12.    GoTo AltaParola
13.  End If
14. End Sub

Codul verifică dacă parola introdusă conține între 6 și15 caractere (inclusiv). Iată cum funcționează codul:

  • Linia 2 declară variabila strParola de tip String.
  • Linia 3 conține eticheta AltaParola, la care sunt redirecționate comenzile GoTo de pe liniile 9 și 12 dacă verificarea parolei eșuează. Etichetele sunt locații în cod la care se poate sări în timpul execuției codului. O etichetă este un cuvânt care se termină cu două puncte.
  • Linia 4 atribuie variabilei strParola rezultatul din caseta de dialog în care utilizatorul introduce parola.
  • Liniile de la 5 până la 13 folosesc o comandă If pentru a verifica dacă parola are lungimea corespunzătoare. Mai întâi, pe linia 5 se verifică dacă variabila strParola are lungimea zero, ceea ce înseamnă că utilizatorul a făcut clic pe butonul Cancel sau pe butonul Close sau a făcut clic pe butonul OK fără a introduce nimic în câmpul casetei de dialog. Dacă lungimea variabilei strParola este zero, comanda End de pe linia 6 încheie procedura. Dacă parola trece primul test, linia 7 verifică dacă lungimea parolei este sub 6 caractere; dacă e așa, procedura afișează un mesaj de atenționare pentru utilizator și redirecționează executarea la eticheta AltaParola. Dacă parola are mai mult de 6 caractere, linia 10 verifică dacă parola are mai mult de 15 caractere; dacă e așa, utilizatorul primește un alt mesaj și procedura revine la eticheta AltaParola.