VBA pakaitos simboliai

Ši pamoka parodys, kaip naudoti pakaitos simbolius VBA.

Pakaitos simboliai naudojami visose programavimo kalbose ir duomenų bazių programose, tokiose kaip SQL Server. Pakaitos simbolis gali būti apibrėžtas kaip simbolis, naudojamas pakeisti vieną ar daugiau teksto eilutės simbolių. Pavyzdžiui, ši teksto eilutė - „mo*“ - ras žodžius mama, pelė, briedis, mama ir tt; o ši teksto eilutė „mo?“ kaip žodį mama rasite tik kaip pakaitos simbolį? pakeičia tik vieną simbolį.

Mes naudojame pakaitos simbolius su „Like Operator“, kuri yra paprastesnė „VBA Regex“ alternatyva.

„Asterix“ (*) pakaitos simbolių naudojimas VBA

„Asterix“ pakaitos simbolis pakeičia vieną ar daugiau simbolių VBA eilutėje.

Pažvelkime į šį „Excel“ langelių diapazoną:

Naudodami „Asterix“ pakaitos simbolį savo VBA kode, galime rasti visas vardus, prasidedančius „M“, ir pakeisti teksto spalvą į raudoną.

12345678 Sub CheckForM ()Dim x As IntegerKai x = nuo 3 iki 8Jei diapazonas ("B" ir x) .Vertė kaip "M*" TadaDiapazonas („B“ ir x). Šriftas.Spalva = vbRedPabaiga JeiKitas xPabaiga Sub

Todėl perėjome diapazoną ir radome visus vardus, prasidedančius raide M, nes mūsų pakaitos simbolių eilutė yra „M*

Aukščiau pateikto kodo vykdymo rezultatas parodytas žemiau.

Jei naudotume pakaitos simbolių eilutę „Ma*“ - pasikeistų tik B3 ir B4 vardai.

Klausimo ženklo (?) Pakaitos simbolių naudojimas VBA

Klausimo ženklas pakeis vieną simbolį VBA eilutėje.

Apsvarstykite šiuos duomenis:

Mes galime naudoti pakaitos simbolių eilutę „? Im“, kad surastume visus vardus, kurie baigiasi „im“

12345678 Sub CheckForIM ()Dim x As IntegerX = nuo 3 iki 8Jei diapazonas ("B" ir x) .Verta kaip "? Im" TadaDiapazonas („B“ ir x). Šriftas.Spalva = vbRedPabaiga JeiKitas xPabaiga Sub

Šio kodo vykdymo rezultatas parodytas žemiau:

Naudojant [simbolių sąrašą] kaip pakaitos simbolį

Aukščiau pateiktas pavyzdys gali būti šiek tiek pakeistas, kad galėtume naudoti klaustuką, be leidžiamų simbolių sąrašo. Todėl pakaitos simbolių eilutę galima pakeisti į „? [E-i] m“, kur pirmasis simbolis gali būti bet koks, antrasis simbolis turi būti tarp e ir i, o paskutinė raidė turi būti „m“. Leidžiami tik 3 simboliai.

12345678 Sub CharListTest ()Dim x As IntegerX = nuo 3 iki 8Jei diapazonas ("B" ir x) .Vertė kaip "? [E-i] m" TadaDiapazonas („B“ ir x). Šriftas.Spalva = vbRedPabaiga JeiKitas xPabaiga Sub

Šio kodo rezultatas būtų toks:

VBA programavimas | Kodo generatorius jums tinka!

Naudojant maišos (#) pakaitos simbolį VBA

Maišos (#) pakaitos simbolis pakeičia vieną skaitmenį VBA eilutėje. Galime sutapti nuo 0 iki 9.

12345678910 Sub CheckForNumber ()Dim x As Integer, y Kaip IntegerX = nuo 3 iki 8Jei y = nuo 2 iki 5Jei ActiveSheet.Cells (x, y) Like "##" TadaActiveSheet.Ląstelės (x, y). Šriftas.Spalva = vbRedPabaiga JeiKitas yKitas xPabaiga Sub

Aukščiau pateiktas kodas perkelia visas diapazono ląsteles („B3: E8“) ir pakeičia langelio teksto spalvą į RAUDONĄ, jei toje ląstelėje randamas dviženklis skaičius.

Žemiau pateiktame pavyzdyje kodas pakeis numerį tik tuo atveju, jei paskutinis skaičius yra 9.

12345678910 Sub CheckFor9 ()Dim x As Integer, y Kaip IntegerKai x = nuo 3 iki 8Jei y = nuo 2 iki 5Jei ActiveSheet.Cells (x, y) Like "#9" TadaActiveSheet.Ląstelės (x, y). Šriftas.Spalva = vbRedPabaiga JeiKitas yKitas xPabaiga Sub

Padėsite svetainės plėtrą, dalintis puslapį su draugais

wave wave wave wave wave