VBA som operatør

I VBA kan du sammenligne to strenge ved hjælp af Synes godt om operatør for at kontrollere matchning af strengene. I denne vejledning lærer du, hvordan du bruger denne operator med forskellige mønstre.

Hvis du vil lære at sammenligne strenge i VBA, klik her: VBA Sammenlign strenge - StrComp

Hvis du vil lære at bruge sammenligningsoperatorer, skal du klikke her: VBA -sammenligningsoperatorer - ikke lig med og mere

Brug af lignende operatør til at sammenligne to strenge

Med Like -operator kan vi kontrollere, om en streng begynder med en bestemt tekst, inkluderer den osv. Som standard er Synes godt om operatoren sammenligner tegn ved hjælp af den binære metode. Det betyder, at operatøren er store og små bogstaver. Hvis du vil gøre det ufølsomt for store og små bogstaver, skal du sætte det Mulighed Sammenlign tekst øverst på dit modul. Ved hjælp af denne metode, Synes godt om operatøren betragter “S” og “s” de samme tegn. I vores eksempler vil vi bruge standard sammenligningen mellem store og små bogstaver.

Hvis matchningen findes, vil Synes godt om operator returnerer True som følge heraf, eller Falsk på anden måde.

Først vil vi se på det enkle eksempel, hvor vi vil kontrollere, om vores strengvariabel begynder med Hr. For at gøre dette skal du sætte en stjerne (*) i slutningen af ​​den matchende tekst (Hr*). Her er koden:

1234567891011121314 Sub LikeDemo ()Dim strName Som strengDim blnResult Som boolskstrName = "Mr. Michael James"Hvis strName Som "Mr*" SåblnResult = SandtAndetblnResult = FalskAfslut HvisAfslut Sub

I dette eksempel vil vi kontrollere, om string strName starter med Hr og returner Sandt eller Falsk i variablen blnResult.

Først sætter vi værdien af strName til Michael James:

1 strName = "Mr. Michael James"

Derefter bruger vi Synes godt om operatør i If -sætningen:

12345 Hvis strName Som "Mr*" SåblnResult = SandtAndetblnResult = FalskAfslut Hvis

Som den strName starter med Hr, det blnResult returnerer True:

Billede 1. Brug Like -operatoren til at kontrollere, om strengen begynder med bestemte tegn

Brug af lignende operatør med forskellige matchende mønstre

Like -operatoren kan kontrollere matchning af to strenge baseret på forskellige mønstre. Her er listen over mulige matchende mønstre:

Mønster kode

Matchningstype

*

Matcher 0 eller flere tegn

?

Matcher en enkelt karakter

#

Matcher et enkelt ciffer

[tegn]

Matcher et enkelt tegn fra en char -liste

[A-Z]

Matcher ethvert stort bogstav fra alfabetet

[A-Za-z]

Matcher ethvert tegn fra alfabetet

[! tegn]

Matcher et enkelt tegn eksklusive en char -liste

Nu kan vi se, hvordan vi bruger disse mønstre i koden. Her er eksemplet på flere mønstre:

Matcher et enkelt tegn:

1234567 strText1 = "ABCDE"Hvis strText1 kan lide "AB? DE" SåblnResult1 = SandtAndetblnResult1 = FalskAfslut Hvis

Matcher et enkelt ciffer:

1234567 strText2 = "AB7DE"Hvis strText2 kan lide "AB#DE" SåblnResult2 = SandtAndetblnResult2 = FalskAfslut Hvis

Matchning af et stort bogstav fra alfabetet:

1234567 strText3 = "ABCDE"Hvis strText3 kan lide "AB [A-Z] DE" SåblnResult3 = SandtAndetblnResult3 = FalskAfslut Hvis

Matcher ikke noget stort bogstav fra alfabetet:

1234567 strText4 = "AB7DE"Hvis strText4 kan lide "AB [! A-Z] DE" SåblnResult4 = SandtAndetblnResult4 = FalskAfslut Hvis

Matchning af ethvert tegn fra alfabetet (store eller små bogstaver):

1234567 strText5 = "ABcDE"Hvis strText5 kan lide "AB [A-Za-z] DE" SåblnResult5 = SandtAndetblnResult5 = FalskAfslut Hvis

Når du udfører koden, kan du se, at Synes godt om operator returnerer True in blnResult variabler for hver sammenligning:

Billede 2. Brug af Like -operatoren med forskellige matchende mønstre

Du vil bidrage til udviklingen af ​​hjemmesiden, at dele siden med dine venner

wave wave wave wave wave