VBA-lignende operatør (nemme eksempler) - Hvordan bruges "Like" i Excel VBA?

Indholdsfortegnelse

VBA som operatør

Ligesom er en operatør i VBA, og dette er en sammenligningsoperator, der sammenligner en given streng som argument i et sæt strenge, og den matcher mønsteret. Hvis mønsteret matches, er det opnåede resultat sandt, og hvis mønsteret ikke matcher, så er opnået resultat er falsk, dette er en indbygget operatør i VBA.

"LIKE" -operatøren er den mest underudnyttede operatør på trods af sin vidunderlige anvendelse. Jeg har ikke set mange mennesker, der bruger denne operatør i fuldt omfang i deres kodning. Faktisk er jeg en af ​​dem, der ikke bruger denne operatør ganske ofte. "VBA LIKE" -operatøren giver os mulighed for at matche strengens mønster mod den fulde streng. Ved at bruge VBA LIKE-operatoren kan vi sammenligne to strenge med den givne mønster. Vi kan kontrollere, om strengen indeholder en understreng i VBA, eller vi kan også kontrollere, om strengen indeholder et bestemt format. Hvis mønsteret matcher strengen, returnerer VBA LIKE-operator SAND ellers FALSE.

Mens vi matcher strenge, skal vi bruge jokertegn til det mønster, vi angiver. Nedenfor er de jokertegn, vi bruger i VBA LIKE-operatøren.

  • Spørgsmålstegn (?): Dette bruges til at matche et hvilket som helst tegn fra strengen. For eksempel, hvis vi har en streng "CAT", og mønsteret er "C? T", returnerer VBA LIKE-operator SAND. Hvis strengen er "CATCH, og mønstrene er" C? T, "returnerer VBA LIKE-operator FALSE.
  • Asterisk (*): Dette matcher nul eller flere tegn. For eksempel, hvis strengen er "God", og mønsteret er "G ** d", returnerer VBA LIKE-operator SAND.
  • Brackets (()): Dette matcher et enkelt tegn, der er angivet i parenteserne.
  • (Char-Char): Dette matcher ethvert enkelt tegn i området Char-Char.
  • (! Chars): Dette matcher ethvert enkelt tegn, der ikke er på listen.
  • (! Char-Char): Dette matcher ethvert enkelt tegn, der ikke er inden for området Char-Char.

Eksempler på VBA LIKE Operator

Lad os se nogle af eksemplerne på VBA LIKE-operatør nu.

Eksempel # 1 - Med spørgsmålstegn

Kode:

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

I ovenstående kode har vi leveret strengen som "God", og mønsteret er "Gå? D." Da spørgsmålstegnet kan matche et enkelt tegn, viser det resultatet som "Ja".

Nu vil jeg ændre strengen til "God morgen."

Kode:

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

I dette tilfælde vil det vise “Nej”, fordi vi har tilføjet endnu et ord til strengen, dvs. Morgen. For at matche et hvilket som helst antal tegn skal vi bruge stjernen.

Eksempel 2 - Med stjerne

Kode:

UnderspørgsmålMark_Example2 () Dim k som streng k = "God morgen" Hvis k kan lide "* God *" Så MsgBox "Ja" Ellers MsgBox "Nej" Afslut hvis slut sub

I ovenstående eksempel har jeg tilføjet to stjerner før og efter tegnet "* God *." Dette svarer til ordet "God" i strengen "God morgen" og returnerer "Ja."

Eksempel # 3 - Med beslag ()

Kode:

UnderspørgsmålMark_Example3 () Dim k As String k = "Good Morning" If k Like "* (M) *" Then MsgBox "Yes" Else MsgBox "No" End If End Sub

Ovenstående kode matcher det enkelt bogstav, der er nævnt i parentes “M”, og returnerer resultatet som Ja.

Eksempel 4 - Med beslag og alfabeter (AZ)

Kode:

UnderspørgsmålMark_Example4 () Dim k As String k = "Good Morning" If k Like "* (AD) *" Then MsgBox "Yes" Else MsgBox "No" End If End Sub

I ovenstående har jeg nævnt tegnene, der skal matche fra A til D.

Dette returnerer "Nej", fordi der ikke er tegn fra A til D i strengen "God morgen."

Nu vil jeg ændre mønsteret til (AH)

Kode:

UnderspørgsmålMærke_eksempel4 () Dim k som streng k = "God morgen" Hvis k kan lide "* (AH) *" Så MsgBox "Ja" Ellers MsgBox "Nej" Afslut hvis afslutning

Dette returnerer "Ja", fordi vi fra A til H har karakteren "G" i strengen "God morgen."

På denne måde kan vi bruge VBA "LIKE" -operatøren til at matche enhver streng fra mønsteret med jokertegn.

Interessante artikler...