VBA Tulad ng Operator (Madaling Mga Halimbawa) | Paano Gumamit ng "Tulad" sa Excel VBA?

VBA Tulad ng Operator

Ang Like ay isang operator sa VBA at ito ay isang operator ng paghahambing na naghahambing sa isang naibigay na string bilang argument sa isang hanay ng mga string at tumutugma ito sa pattern, kung ang pattern ay naitugma sa gayon ang resulta na nakuha ay totoo at kung ang pattern ay hindi tumutugma sa gayon ang resulta na nakuha ay hindi totoo, ito ay isang nakapaloob na operator sa VBA.

Ang operator na "LIKE" ay ang pinaka-hindi ginagamit na operator sa kabila ng kahanga-hangang paggamit nito. Hindi ko nakita ang maraming tao na gumagamit ng operator na ito ng buong lawak sa kanilang pag-coding, Sa katunayan, isa ako sa kanila na hindi madalas gumagamit ng operator na ito. Pinapayagan kami ng operator ng "VBA LIKE" na itugma ang pattern ng string laban sa buong string. Sa pamamagitan ng paggamit ng VBA LIKE operator maaari naming ihambing ang dalawang mga string laban sa ibinigay na patter. Maaari naming suriin kung ang string ay naglalaman ng isang substring sa VBA o maaari din namin kung ang string ay naglalaman ng anumang tukoy na format. Kung ang pattern ay tumutugma sa string pagkatapos ay magbabalik ang operator ng VBA LIKE na TRUE o kung hindi man MALI.

Habang tumutugma ang mga string kailangan naming gumamit ng mga wildcard character sa patter na tinukoy namin. Nasa ibaba ang mga wildcard na ginagamit namin sa VBA LIKE operator.

  • Tandang pananong (?): Ginagamit ito upang tumugma sa anumang isang character mula sa string. Halimbawa, kung mayroon kaming isang string na "CAT" at ang pattern ay "C? T" kung gayon ang operator ng VBA LIKE ay nagbabalik ng TUNAY. Kung ang string ay "CATCH at ang mga pattern ay" C? T "pagkatapos ay ibalik ng operator ng VBA LIKE na MALI.
  • Asterisk (*): Tumutugma ito sa zero o higit pang mga character. Halimbawa, kung ang string ay "Mabuti" at ang pattern ay "G ** d" VBA LIKE operator ay nagbabalik TRUE.
  • Mga Bracket ([]): Ito ay tumutugma sa anumang isang solong character na tinukoy sa mga braket.
  • [Char-Char]: Tumutugma ito sa anumang solong character sa saklaw na Char-Char.
  • [! Chars]: Ito ay tumutugma sa anumang solong character na wala sa listahan.
  • [! Char-Char]: Tumutugma ito sa anumang solong character na wala sa saklaw na Char-Char.

Mga halimbawa ng VBA LIKE Operator

Tingnan natin ang ilan sa mga halimbawa ng VBA LIKE operator ngayon.

Maaari mong i-download ang VBA Tulad ng Excel Template dito - VBA Tulad ng Excel Template

Halimbawa # 1 - Sa Marka ng Tanong

Code:

 Sub QuestionMark_Example1 () Dim k Bilang String k = "Mabuti" Kung k Tulad ng "Go? D" Kung gayon MsgBox "Oo" Iba Pa MsgBox "Hindi" Wakas Kung End Sub 

Sa code sa itaas, ibinigay namin ang string bilang "Mabuti" at ang pattern ay "Go? D". Dahil ang tandang pananong ay maaaring tumugma sa isang solong character ipapakita nito ang resulta bilang "Oo".

Ngayon ay babaguhin ko ang string sa "Magandang Umaga".

Code:

 Sub QuestionMark_Example1 () Dim k As String k = "Good Morning" Kung k Tulad ng "Go? D" Kung gayon MsgBox "Oo" Else MsgBox "Hindi" Wakas Kung End Sub 

Sa kasong ito, ipapakita ang "Hindi" sapagkat nagdagdag kami ng isa pang salita sa string na ie Umaga. Upang maitugma ang anumang bilang ng mga character na kailangan namin upang magamit ang asterisk.

Halimbawa # 2 - Sa Asterisk

Code:

 Sub QuestionMark_Example2 () Dim k As String k = "Good Morning" Kung k Tulad ng "* Magandang *" Kung gayon MsgBox "Oo" Iba MsgBox "Hindi" Wakas Kung Wakas Sub 

Sa halimbawa sa itaas, nagdagdag ako ng dalawang mga asterisk bago at pagkatapos ng character na "* Magandang *". Tutugma ito sa salitang "Magandang" sa string na "Magandang Umaga" at ibabalik ang "Oo".

Halimbawa # 3 - Sa Mga Bracket []

Code:

 Sub QuestionMark_Example3 () Dim k As String k = "Good Morning" Kung k Like "* [M] *" Kung gayon MsgBox "Oo" Else MsgBox "No" End Kung End Sub 

Ang code sa itaas ay tumutugma sa solong titik na nabanggit sa bracket na "M" at ibabalik ang resulta bilang Oo.

Halimbawa # 4 - Sa Mga Bracket at Alphabet [A-Z]

Code:

 Sub QuestionMark_Example4 () Dim k As String k = "Good Morning" Kung k Like "* [A-D] *" Kung gayon MsgBox "Oo" Else MsgBox "Hindi" Wakas Kung End Sub 

Sa nabanggit, nabanggit ko ang mga character na tutugma mula A hanggang D.

Ibabalik nito ang "Hindi" dahil walang mga character mula A hanggang D sa string "Magandang umaga".

Ngayon ay babaguhin ko ang pattern sa [A-H]

Code:

 Sub QuestionMark_Example4 () Dim k As String k = "Good Morning" Kung k Like "* [A-H] *" Kung gayon MsgBox "Oo" Else MsgBox "Hindi" Wakas Kung End Sub 

Ibabalik nito ang "Oo" dahil mula A hanggang H mayroon kaming isang character na "G" sa string na "Good Morning"

Tulad nito, maaari naming gamitin ang VBA "LIKE" operator upang maitugma ang anumang string mula sa pattern na may mga wild card character.