VBA patinka operatorius

VBA galite palyginti dvi eilutes naudodami Kaip operatorius, kad patikrintų eilučių atitikimą. Šioje pamokoje sužinosite, kaip naudoti šį operatorių naudojant skirtingus modelius.

Jei norite sužinoti, kaip palyginti stygas VBA, spustelėkite čia: VBA Compare Strings - StrComp

Jei norite sužinoti, kaip naudoti palyginimo operatorius, spustelėkite čia: VBA palyginimo operatoriai - nelygu ir daugiau

Panašaus operatoriaus naudojimas dviem eilutėms palyginti

Naudodami operatorių „Like“, galime patikrinti, ar eilutė prasideda konkrečiu tekstu, ar apima jį ir tt Pagal numatytuosius nustatymus Kaip operatorius lygina simbolius dvejetainiu metodu. Tai reiškia, kad operatorius skiria didžiąsias ir mažąsias raides. Jei norite, kad jis neskirtų didžiųjų ir mažųjų raidžių, turite įdėti Parinktis Lyginti tekstą modulio viršuje. Naudojant šį metodą ,. Kaip operatorius laiko „S“ ir „s“ tuos pačius simbolius. Savo pavyzdžiuose naudosime numatytąjį, didžiųjų ir mažųjų raidžių palyginimą.

Jei sutapimas egzistuoja, Kaip dėl to operatorius grąžina „True“ arba kitaip „False“.

Pirma, mes pažvelgsime į paprastą pavyzdį, kuriame norime patikrinti, ar mūsų eilutės kintamasis prasideda Ponas. Norėdami tai padaryti, atitinkamo teksto pabaigoje turite įdėti žvaigždutę (*) (Ponas*). Čia yra kodas:

1234567891011121314 Sub LikeDemo ()Dim strName As StringDim blnResult As BooleanstrName = "Ponas Michaelas Jamesas"Jei strName Kaip „Ponas*“, tadablnResult = TiesaKitasblnResult = NetiesaPabaiga JeiPabaiga Sub

Šiame pavyzdyje norime patikrinti, ar eilutė strName prasideda nuo Ponas ir kintamajame grąžinkite „True“ arba „False“ blnResult.

Pirmiausia nustatome reikšmę strName į Ponas Michaelas Jamesas:

1 strName = "Ponas Michaelas Jamesas"

Tada mes naudojame Kaip operatorius If sakinyje:

12345 Jei strName Kaip „Ponas*“, tadablnResult = TiesaKitasblnResult = NetiesaPabaiga Jei

Kaip strName prasideda nuo Ponas, blnResult grąžina tiesa:

Vaizdas 1. Naudodami „Like“ operatorių patikrinkite, ar eilutė prasideda tam tikrais simboliais

Panašaus operatoriaus naudojimas su skirtingais atitinkančiais modeliais

„Like“ operatorius gali patikrinti dviejų eilučių atitikimą pagal skirtingus modelius. Čia yra galimų atitikimo modelių sąrašas:

Šablono kodas

Derinimo tipas

*

Atitinka 0 ar daugiau simbolių

?

Atitinka vieną simbolį

#

Atitinka vieną skaitmenį

[simboliai]

Atitinka vieną simbolį iš simbolių sąrašo

[A – Z]

Atitinka bet kokias didžiąsias abėcėlės raides

[A-Za-z]

Atitinka bet kurį abėcėlės simbolį

[! simboliai]

Atitinka vieną simbolį, išskyrus simbolių sąrašą

Dabar galime pamatyti, kaip naudoti šiuos kodo modelius. Štai kelių modelių pavyzdys:

Atitinka vieną simbolį:

1234567 strText1 = "ABCDE"Jei strText1 patinka „AB? DE“, tadablnResult1 = TiesaKitasblnResult1 = NetiesaPabaiga Jei

Vieno skaitmens atitikimas:

1234567 strText2 = "AB7DE"Jei strText2 patinka „AB#DE“, tadablnResult2 = TiesaKitasblnResult2 = NetiesaPabaiga Jei

Bet kokių didžiųjų raidžių atitikimas abėcėlėje:

1234567 strText3 = "ABCDE"Jei strText3 patinka „AB [A-Z] DE“, tadablnResult3 = TiesaKitasblnResult3 = NetiesaPabaiga Jei

Neatitinka jokių didžiųjų abėcėlės simbolių:

1234567 strText4 = "AB7DE"Jei strText4 patinka „AB [! A-Z] DE“, tadablnResult4 = TiesaKitasblnResult4 = NetiesaPabaiga Jei

Bet koks abėcėlės simbolis (didžiosios arba mažosios):

1234567 strText5 = "ABcDE"Jei strText5 patinka „AB [A-Za-z] DE“, tadablnResult5 = TiesaKitasblnResult5 = NetiesaPabaiga Jei

Vykdydami kodą galite matyti, kad Kaip operatorius grąžina „True in“ blnResult kintamieji kiekvienam palyginimui:

2 paveikslas. Naudojant „Like“ operatorių su skirtingais atitikimo modeliais

wave wave wave wave wave