Folosirea funcțiilor StrConv, LCase și UCase pentru a modifica modul în care este scris șirul

Pentru a schimba modul în care este scris un șir, se folosesc funcțiile StrConv (care vine de la string conversion), LCase și UCase. Dintre acestea, cel mai ușor de utilizat este StrConv, care poate converti un șir într-o varietate de formate diferite, variind de la majuscule, minuscule sau doar prima literă majusculă – propercase (în VBA sunt cunoscute sub denumirea de title case), până la caracterele fonetice japoneze hiragana și katakana.

Folosirea StrConv

Funcția StrConv are următoarea sintaxă:

StrConv(string, conversion)

Aici, argumentul string este orice expresie de tip string, iar argumentul conversion este o constantă sau o valoare care specifică tipul de conversie cerut. Cele mai utile constante și valori de conversie sunt prezentate în tabelul următor.

De exemplu, presupunând că un program a returnat dintr-o bază de date un șir numit strNumeClient care conține numele unei persoane, se poate folosi StrConv pentru fi siguri că prima literă din nume este majusculă, folosind o declarația:

strProperNumeClient = StrConv(strNumeClient, vbProperCase)

StrConv ignoră faptul că numele preluate încep deja cu literă mare

De reținut că funcția StrConv nu ia în seamă cum este scris șirul de caractere – ea returnează pur și simplu șirul convertit așa cum i s-a cerut. De exemplu, dacă numele este scris cu majuscule și cu StrConv i se cere să fie transformat tot în majuscule, nu apare nicio problemă.

Folosirea LCase și UCase

Dacă funcția StrConv nu pare ușor de folosit, se pot utiliza alternativ funcțiile LCase și UCase, care convertesc șirul la litere mici și, respectiv, mari. LCase este utilizat frecvent pentru a evita problemele care pot să apară în limbaje precum XML care fac distincție (în numele lor de variabile) între literele mari și cele mici. Cu alte cuvinte, AcestNumeDeVariabila și AcestnumedeVariabila sunt considerate variabile complet diferite. Dacă se folosesc două nume de variabile cu majuscule diferite, Editorul de cod VBA le va forța automat să fie identice.

VBA, totuși, este case-sensitive când compară datele de tip șir.

LCase și UCase au următoarea sintaxă:

LCase(string)
UCase(string)

Aici, string poate fi orice expresie de tip șir.

De exemplu, următoarea comandă transformă șirul MyString în litere mici și îl atribuie la MyLowerString:

MyLowerString = LCase(MyString)