Suka VBA

Pengendali Seperti VBA

Seperti pengendali dalam VBA dan ini adalah operator perbandingan yang membandingkan rentetan yang diberikan sebagai argumen dalam satu set rentetan dan ia sesuai dengan corak, jika corak itu dipadankan maka hasil yang diperoleh adalah benar dan jika corak itu tidak sesuai maka hasil yang diperoleh adalah salah, ini adalah pengendali dalam VBA.

Pengendali "LIKE" adalah pengendali yang paling tidak digunakan walaupun penggunaannya luar biasa. Saya belum pernah melihat banyak orang yang menggunakan pengendali ini dalam pengekodan mereka. Sebenarnya, saya adalah salah seorang daripada mereka yang tidak kerap menggunakan pengendali ini. Pengendali "VBA LIKE" membolehkan kami memadankan corak tali dengan rentetan penuh. Dengan menggunakan pengendali VBA LIKE kita dapat membandingkan dua rentetan dengan patter yang diberikan. Kami dapat memeriksa sama ada tali mengandungi substring dalam VBA atau kami juga boleh memastikan sama ada tali mengandungi format tertentu. Sekiranya corak sesuai dengan rentetan maka pengendali VBA LIKE akan mengembalikan BENAR atau yang SALAH.

Semasa mencocokkan rentetan, kita perlu menggunakan watak wildcard untuk patter yang kita tentukan. Berikut adalah wildcard yang kami gunakan dalam pengendali VBA LIKE.

  • Tanda Soalan (?): Ini digunakan untuk mencocokkan salah satu watak dari rentetan. Sebagai contoh, jika kita mempunyai rentetan "CAT" dan coraknya adalah "C? T", maka operator VBA LIKE akan mengembalikan BENAR. Sekiranya rentetan adalah "CATCH dan coraknya" C? T "maka pengendali VBA LIKE akan mengembalikan PALSU.
  • Asterisk (*): Ini sepadan dengan sifar atau lebih aksara. Contohnya, jika rentetan itu "Baik" dan coraknya "G ** d" VBA LIKE operator mengembalikan BENAR.
  • Tanda kurung ([]): Ini sesuai dengan mana-mana satu watak yang dinyatakan dalam kurungan.
  • [Char-Char]: Ini sesuai dengan mana-mana watak dalam julat Char-Char.
  • [! Chars]: Ini sesuai dengan mana-mana watak yang tidak ada dalam senarai.
  • [! Char-Char]: Ini sesuai dengan mana-mana watak tunggal yang tidak termasuk dalam Char-Char.

Contoh Pengendali SEPERTI VBA

Mari lihat beberapa contoh pengendali VBA LIKE sekarang.

Anda boleh memuat turun Templat VBA Suka Excel ini di sini - Templat VBA Suka Excel

Contoh # 1 - Dengan Tanda Tanya

Kod:

 Sub SoalanMark_Contoh1 () Dim k As String k = "Bagus" Jika k Suka "Pergi? D" Kemudian MsgBox "Ya" Lain-lain MsgBox "Tidak" Tamat Jika Akhir Sub 

Dalam kod di atas, kami telah memberikan rentetan sebagai "Baik" dan coraknya adalah "Go? D". Oleh kerana tanda tanya dapat mencocokkan satu watak, ia akan menunjukkan hasilnya sebagai "Ya".

Sekarang saya akan menukar rentetan menjadi "Selamat Pagi".

Kod:

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

Dalam kes ini, ia akan menunjukkan "Tidak" kerana kami telah menambahkan satu lagi perkataan pada rentetan iaitu Pagi. Untuk memadankan sebilangan besar watak, kita perlu menggunakan tanda bintang.

Contoh # 2 - Dengan Asterisk

Kod:

 Sub SoalanMark_Contoh2 () Dim k Sebagai Rentetan k = "Selamat Pagi" Jika k Suka "* Baik *" Kemudian MsgBox "Ya" Lain-lain MsgBox "Tidak" Tamat Jika Akhir Sub 

Dalam contoh di atas, saya telah menambahkan dua tanda bintang sebelum dan selepas watak "* Baik *". Ini akan sesuai dengan kata "Baik" dalam rentetan "Selamat Pagi" dan mengembalikan "Ya".

Contoh # 3 - Dengan Kurungan []

Kod:

 Sub SoalanMark_Contoh3 () Dim k Sebagai Rentetan k = "Selamat Pagi" Jika k Suka "* [M] *" Kemudian MsgBox "Ya" Lain-lain MsgBox "Tidak" Tamat Jika Akhir Sub 

Kod di atas sepadan dengan huruf tunggal yang disebut dalam tanda kurung "M" dan mengembalikan hasilnya sebagai Ya.

Contoh # 4 - Dengan Tanda Kurung & Huruf [AZ]

Kod:

 Sub SoalanMark_Contoh4 () Dim k Sebagai Rentetan k = "Selamat Pagi" Jika k Suka "* [AD] *" Kemudian MsgBox "Ya" Lain-lain MsgBox "Tidak" Tamat Jika Akhir Sub 

Dalam perkara di atas, saya telah menyebut watak-watak untuk dipadankan dari A hingga D.

Ini akan mengembalikan "Tidak" kerana tidak ada watak dari A hingga D dalam rentetan "Selamat Pagi" .

Sekarang saya akan menukar corak menjadi [AH]

Kod:

 Sub SoalanMark_Contoh4 () Dim k Sebagai Rentetan k = "Selamat Pagi" Jika k Suka "* [AH] *" Kemudian MsgBox "Ya" Lain-lain MsgBox "Tidak" Tamat Jika Akhir Sub 

Ini akan mengembalikan "Ya" kerana dari A hingga H kita memiliki karakter "G" dalam rentetan "Selamat Pagi"

Seperti ini, kita dapat menggunakan operator "LIKE" VBA untuk memadankan rentetan dari corak dengan watak wild card.