VBA nagu operaator (lihtsad näited) Kuidas kasutada "Like" Exceli VBA-s?

VBA nagu operaator

Like on operaator VBA-s ja see on võrdlusoperaator, mis võrdleb antud stringi stringi hulga argumendina ja sobib mustriga, kui muster sobib, on saadud tulemus tõene ja kui muster ei klapi, siis Saadud tulemus on vale, see on VBA sisseehitatud operaator.

Operaator LIKE on vaatamata suurepärasele kasutamisele enimkasutatud operaator. Ma ei ole näinud paljusid inimesi, kes kasutavad seda operaatorit oma kodeerimisel täies ulatuses, tegelikult olen üks neist, kes ei kasuta seda operaatorit sageli. Operaator “VBA LIKE” võimaldab meil sobitada stringi muster täieliku stringi järgi. Operaatori VBA LIKE abil saame võrrelda kahte stringi antud patteriga. Saame kontrollida, kas string sisaldab VBA-s alamstringi või saame ka seda, kas string sisaldab mingit konkreetset vormingut. Kui muster sobib stringiga, tagastab operaator VBA LIKE väärtuse TRUE või muidu FALSE.

Stringide sobitamisel peame kasutama metamärke meie määratud patterile. Allpool on metamärgid, mida kasutame operaatoris VBA LIKE.

  • Küsimärk (?): Seda kasutatakse stringi mis tahes tähemärgi sobitamiseks. Näiteks kui meil on string „CAT” ja muster on „C? T”, tagastab operaator VBA LIKE TÕENE. Kui string on "PÜÜA ja mustrid on" C? T ", tagastab operaator VBA LIKE vale.
  • Tärn (*): see vastab nullile või enamale tähemärgile. Näiteks kui string on “Hea” ja muster on “G ** d”, tagastab operaator VBA LIKE TÕENE.
  • Sulgudes ([]): see sobib ükskõik millise sulgudes määratud tähemärgiga.
  • [Char-Char]: see sobib ükskõik millise tähemärgiga vahemikus Char-Char.
  • [! Tähemärgid]: see sobib kõigi üksikute märkidega, mida loendis pole.
  • [! Char-Char]: See sobib ükskõik millise tähemärgiga, mis pole vahemikus Char-Char.

Näiteid VBA LIKE operaatorist

Vaatame nüüd VBA LIKE operaatori näiteid.

Selle VBA Like Exceli malli saate alla laadida siit - VBA Like Exceli mall

Näide 1 - küsimärgiga

Kood:

 AlaküsimusMark_Example1 () Dim k As String k = "Hea", kui k meeldib "Go? D", siis MsgBox "Jah" Muu MsgBox "Ei" Lõpeta, kui End Sub 

Ülaltoodud koodis oleme stringi pakkunud kui "Hea" ja muster on "Go? D". Kuna küsimärk võib sobida ühe tähemärgiga, näitab see tulemust „Jah“.

Nüüd vahetan stringi “Tere hommikust”.

Kood:

 AlaküsimusMark_Example1 () Dim k As String k = "Tere hommikust" Kui k meeldib "Go? D", siis MsgBox "Jah" Muu MsgBox "Ei" Lõpeta, kui Lõpp Alam 

Sel juhul näitab see “Ei”, kuna oleme lisanud stringi veel ühe sõna, st Hommik. Mis tahes arvu märkide sobitamiseks peame kasutama tärni.

Näide # 2 - tärniga

Kood:

 AlaküsimusMark_Example2 () Dim k As String k = "Tere hommikust" Kui k meeldib "* Hea *" Siis MsgBox "Jah" Muu MsgBox "Ei" Lõpeta, kui Lõpp Alam 

Ülaltoodud näites olen lisanud kaks tähte enne ja pärast märki “* Hea *”. See sobib stringi „Tere hommikust” sõnaga „Hea” ja tagastab sõna „Jah”.

Näide # 3 - sulgudega []

Kood:

 AlaküsimusMark_Näide3 () Dim k As String k = "Tere hommikust" Kui k meeldib "* [M] *" Siis MsgBox "Jah" Muu MsgBox "Ei" Lõpeta, kui Lõpp Alam 

Ülaltoodud kood sobib sulgudes mainitud ühe tähega ja tagastab tulemuse kui Jah.

Näide # 4 - sulgude ja tähestikega [AZ]

Kood:

 AlaküsimusMark_Näide4 () Dim k As String k = "Tere hommikust" Kui k meeldib "* [AD] *" Siis MsgBox "Jah" Muu MsgBox "Ei" Lõpeta, kui Lõpp Alam 

Eespool olen maininud märke, mis sobivad A-st D-ni.

Sellega tagastatakse „Ei”, kuna stringis „Tere hommikust” ei ole tähti A-st D-ni .

Nüüd muudan mustri [AH]

Kood:

 AlaküsimusMark_Näide4 () Dim k As String k = "Tere hommikust" Kui k meeldib "* [AH] *" Siis MsgBox "Jah" Muu MsgBox "Ei" Lõpeta, kui lõpp alam 

See tagastab "Jah", sest A-st H-ni on meil stringis "Tere hommikust" märk "G"

Niimoodi saame kasutada VBA operaatorit “LIKE”, et sobitada mis tahes stringi mustrist metsakaardi tähemärkidega.