Vältida VBA tõstutundlikkust - võimalus teksti võrdlemiseks

Lang L: none (table-of-contents)

VBA -s töötades peate sageli nööre võrdlema. Vaikimisi, VBA on tõstutundlik, nii et kui võrrelda kahte sama teksti ja üks neist on suurtähtedega ja teine ​​väiketähtedega, peab VBA neid erinevateks tekstideks. Selles õpetuses näete, kuidas vältida VBA suurtähtede vahet.

VBA tõstutundmatuks muutmine

Selleks, et muuta VBA tõstutundetuks, peate panema Valik Võrdle teksti mooduli alguses. Esiteks vaatame VBA tavapärast käitumist ilma selle suvandita. See on kood:

123456789 Kui Sheet1.Range ("A1"). Väärtus = Sheet1.Range ("B1"). Väärtus SiisMsgBox "Kaks teksti on samad"MuiduMsgBox "Kaks teksti on erinevad"Lõpp Kui

Näites tahame võrrelda A1 ja B1 stringe. Kui stringid on võrdsed, tagastame sõnumikasti sõnumiga “Kaks teksti on samad”. Kui need pole võrdsed, tagastame teate „Kaks teksti on erinevad.

Pilt 1. Stringide võrdlemine ilma suvandita Võrdle teksti

Nagu pildilt näha, on mõlemad tekstid samad, kuid esimene on suurtähtedega, teine ​​aga väikeste tähtedega. Seetõttu peab VBA neid teistsugusteks ja saatis selle sõnumi tagasi.

1234567891011 Valik Võrdle tekstiAvalik suur- ja väiketähtede tundlik test ()Kui Sheet1.Range ("A1"). Väärtus = Sheet1.Range ("B1"). Väärtus SiisMsgBox "Kaks teksti on samad"MuiduMsgBox "Kaks teksti on erinevad"Lõpp KuiEnd Sub

Nüüd lisame mooduli algusesse suvandi Võrdle teksti ja näeme erinevust. Siin on kood. Käivitame koodi samal näitel:

Pilt 2. Stringide võrdlemine suvandiga Võrdle teksti

Kui valikuvõrdluse tekst on seatud, muutub VBA suurtähtede vahetundmatuks ja peab neid kahte teksti samaks.

Teksti võrdlemine

Kui te ei deklareeri Valik Võrdle teksti, saate teisendada väiketähti, et võrrelda väiketähti. See on võimalik UCase, LCase või StrConv funktsiooni abil. Lisateavet selle kohta leiate siit: VBA ülemise, alumise ja korraliku korpuse funktsioonid

Te aitate arengu ala, jagades leht oma sõpradega

wave wave wave wave wave