VBA Like Operator (enostavni primeri) - Kako uporabiti »Všeč mi je« v Excelu VBA?

VBA Like Operator

Like je operater v VBA, to pa je primerjalni operater, ki primerja dani niz kot argument v nizu nizov in se ujema z vzorcem; če se vzorec ujema, je dobljeni rezultat resničen in če se vzorec ne ujema, potem dobljeni rezultat je napačen, to je vgrajeni operater v VBA.

Operater “LIKE” je kljub svoji čudoviti uporabi najbolj premalo uporabljen operater. Nisem videl veliko ljudi, ki v celoti uporabljajo tega operaterja pri kodiranju. Pravzaprav sem eden izmed njih, ki tega operaterja ne uporablja pogosto. Operator »VBA LIKE« nam omogoča, da vzorec niza primerjamo s celotnim nizom. Z uporabo operaterja VBA LIKE lahko primerjamo dva niza glede na dani vzorec. Lahko preverimo, ali niz vsebuje podniz v VBA, ali pa niz vsebuje kakšno določeno obliko. Če se vzorec ujema z nizom, operater VBA LIKE vrne TRUE ali sicer FALSE.

Med ujemanjem nizov moramo v vzorcu, ki ga določimo, uporabiti nadomestne znake. Spodaj so nadomestni znaki, ki jih uporabljamo v operaterju VBA LIKE.

  • Vprašaj (?): Uporablja se za ujemanje katerega koli znaka iz niza. Če imamo na primer niz »CAT« in je vzorec »C? T«, potem operater VBA LIKE vrne TRUE. Če je niz »CATCH in vzorci so« C? T, potem vrne operator VBA LIKE FALSE.
  • Zvezdica (*): Ujema se z nič ali več znaki. Če je na primer niz »Dober« in vzorec »G ** d«, operater VBA LIKE vrne TRUE.
  • Oklepaji (()): Ujema se z enim samim znakom, navedenim v oklepajih.
  • (Char-Char): Ujema se s katerim koli znakom v območju Char-Char.
  • (! Znaki): Ujema se s katerim koli znakom, ki ni na seznamu.
  • (! Char-Char): Ujema se s katerim koli znakom, ki ni v območju Char-Char.

Primeri operaterja VBA LIKE

Oglejmo si nekaj primerov operaterja VBA LIKE zdaj.

1. primer - z vprašalnikom

Koda:

Sub QuestionMark_Example1 () Dim k As String k = "Good" If k Like "Go? D" Potem MsgBox "Yes" Else MsgBox "No" End If End Sub

V zgornji kodi smo niz navedli kot »Dobro«, vzorec pa je »Go? D.« Ker se vprašaj lahko ujema z enim znakom, bo rezultat prikazan kot "Da".

Zdaj bom niz spremenil v "Dobro jutro."

Koda:

Sub QuestionMark_Example1 () Dim k As String k = "Dobro jutro" Če k Všeč "Go? D" Potem MsgBox "Yes" Else MsgBox "No" End If End Sub

V tem primeru bo prikazano »Ne«, ker smo v niz dodali še eno besedo, tj. Jutro. Za ujemanje poljubnega števila znakov moramo uporabiti zvezdico.

2. primer - Z zvezdico

Koda:

Sub QuestionMark_Example2 () Dim k As String k = "Dobro jutro" Če k Všeč "* Dobro *" Potem MsgBox "Yes" Else MsgBox "No" End If End Sub

V zgornjem primeru sem pred in za znakom "* Dobro *." Dodal dve zvezdici. To se bo ujemalo z besedo "Dobro" v nizu "Dobro jutro" in vrnilo "Da".

Primer # 3 - z oklepaji ()

Koda:

Sub QuestionMark_Example3 () Dim k As String k = "Dobro jutro" Če k Všeč "* (M) *" Potem MsgBox "Yes" Else MsgBox "Ne" End If End Sub

Zgornja koda se ujema z eno črko, omenjeno v oklepaju "M", in rezultat vrne kot Da.

Primer # 4 - Z oklepaji in abecedami (AZ)

Koda:

Sub QuestionMark_Example4 () Dim k As String k = "Dobro jutro" If k Like "* (AD) *" Potem MsgBox "Yes" Else MsgBox "No" End If End Sub

V zgornjem sem omenil znake, ki se ujemajo od A do D.

To bo vrnilo »Ne«, ker v nizu »Dobro jutro« ni znakov od A do D.

Zdaj bom vzorec spremenil v (AH)

Koda:

Sub QuestionMark_Example4 () Dim k As String k = "Dobro jutro" If k Like "* (AH) *" Potem MsgBox "Yes" Else MsgBox "Ne" End If End Sub

To bo vrnilo "Da", ker imamo od A do H znak "G" v nizu "Dobro jutro."

Tako lahko uporabimo operator VBA "LIKE", da poljuben niz iz vzorca povežemo z znaki nadomestnih znakov.

Zanimive Članki...