Like Operator di VBA Excel, Cara Mudah Mencocokkan Pola Teks

Dalam VBA, Anda mungkin sudah terbiasa membandingkan dua nilai menggunakan operator sama dengan (=).

Contohnya:

If Nama = "Andi" Then

Cara tersebut bekerja dengan baik jika teks yang dicari harus sama persis.

Namun, bagaimana jika Anda ingin:

  • mencari semua nama yang diawali huruf A;

  • memeriksa apakah sebuah kode terdiri dari tiga angka;

  • menemukan teks yang berakhiran .xlsx;

  • memvalidasi pola tertentu tanpa memeriksa setiap karakter satu per satu.

Untuk kebutuhan seperti ini, VBA menyediakan Like Operator.


Apa Itu Like Operator?

Like adalah operator yang digunakan untuk membandingkan sebuah teks dengan pola tertentu (pattern matching).

Berbeda dengan operator =, Like dapat menggunakan karakter khusus (wildcard) sehingga pencarian menjadi lebih fleksibel.

Sintaks dasarnya adalah:

If Teks Like Pola Then

    'Kode

End If

Jika teks sesuai dengan pola yang ditentukan, hasilnya adalah True.


Wildcard yang Didukung Like

Berikut karakter khusus yang paling sering digunakan.

WildcardFungsi
* Nol atau lebih karakter
? Tepat satu karakter
# Tepat satu angka
[ ] Salah satu karakter dalam daftar
[! ] Karakter selain yang ada dalam daftar

Memahami wildcard ini adalah kunci penggunaan Like.


Menggunakan Tanda Bintang (*)

Wildcard * mewakili nol atau lebih karakter.

If "Andi" Like "A*" Then

    MsgBox "Cocok"

End If

Karena teks diawali huruf A, hasilnya adalah True.

Contoh lain:

PolaCocok Dengan
A* Andi, Agus, Ahmad
*Excel Belajar Excel
*2026 Laporan2026

Menggunakan Tanda Tanya (?)

Wildcard ? mewakili tepat satu karakter.

If "AB1" Like "??#" Then

    MsgBox "Valid"

End If

Artinya:

  • karakter pertama bebas,

  • karakter kedua bebas,

  • karakter ketiga harus angka.


Menggunakan Tanda Pagar (#)

Wildcard # hanya cocok dengan angka.

If "125" Like "###" Then

    MsgBox "Tiga digit"

End If

Sedangkan:

12A

tidak akan cocok.


Menggunakan Daftar Karakter [ ]

Anda dapat menentukan pilihan karakter tertentu.

If "Budi" Like "[ABC]*" Then

    MsgBox "Huruf awal sesuai"

End If

Artinya, huruf pertama harus A, B, atau C.


Menggunakan Negasi [! ]

Untuk mengecualikan karakter tertentu.

If "Zaki" Like "[!ABC]*" Then

    MsgBox "Tidak diawali A, B, atau C"

End If

Studi Kasus

Misalkan kolom A berisi daftar kode pelanggan.

A-001
A-002
B-001
A-003
C-005

Anda hanya ingin memberi warna pada kode yang diawali huruf A.

Sub TandaiKode()

    Dim Sel As Range

    For Each Sel In Range("A2:A100")

        If Sel.Value Like "A-*" Then

            Sel.Interior.Color = vbYellow

        End If

    Next Sel

End Sub

Makro akan memberi warna hanya pada kode yang sesuai dengan pola.


Validasi Nomor Telepon

Misalkan nomor telepon harus terdiri dari sepuluh digit.

If Range("A2").Value Like "##########" Then

    MsgBox "Nomor valid"

Else

    MsgBox "Nomor tidak valid"

End If

Like vs Operator =

Like=
Mendukung wildcard Harus sama persis
Cocok untuk pencarian pola Cocok untuk perbandingan langsung
Lebih fleksibel Lebih sederhana

Jika Anda hanya ingin mengetahui apakah dua nilai sama, gunakan =.

Jika ingin mencocokkan pola tertentu, gunakan Like.


Like vs InStr

LikeInStr
Mencocokkan pola Mencari posisi teks
Mendukung wildcard Tidak mendukung wildcard
Menghasilkan True atau False Menghasilkan posisi karakter

Gunakan Like jika fokusnya adalah apakah teks sesuai pola.

Gunakan InStr jika Anda ingin mengetahui di mana posisi suatu teks berada.


Kesalahan yang Sering Terjadi

Menggunakan = untuk Pola

Salah:

If Nama = "A*" Then

Kode tersebut tidak akan mencari semua nama yang diawali huruf A.

Yang benar:

If Nama Like "A*" Then

Salah Menggunakan Wildcard

Perhatikan perbedaannya.

#

berarti angka.

Sedangkan:

?

berarti satu karakter apa pun.


Mengira Like Tidak Peka Huruf Besar/Kecil

Hasil pencocokan dapat dipengaruhi oleh pengaturan Option Compare pada modul.

Jika aplikasi Anda memerlukan aturan tertentu mengenai huruf besar dan kecil, pastikan memahami pengaruh pengaturan tersebut sebelum menggunakan Like.


Tips Praktis

💡 Gunakan Like untuk validasi format kode, nomor, atau nama file.

💡 Manfaatkan wildcard * untuk mencari awalan atau akhiran teks.

💡 Gunakan # jika pola harus berupa angka.

💡 Gunakan [ ] untuk membatasi karakter yang diperbolehkan.

💡 Padukan Like dengan If...Then atau Select Case untuk membuat logika validasi yang lebih ringkas.


Ringkasan

WildcardFungsi
* Nol atau lebih karakter
? Satu karakter
# Satu digit angka
[ABC] Salah satu karakter dalam daftar
[!ABC] Selain karakter dalam daftar

Kesimpulan

Like merupakan operator yang sangat berguna ketika Anda perlu mencocokkan teks berdasarkan pola tertentu. Dengan dukungan berbagai wildcard seperti *, ?, #, dan [ ], Anda dapat membuat proses pencarian maupun validasi data menjadi lebih fleksibel dibandingkan menggunakan operator =. Menguasai Like akan membantu Anda menulis kode VBA yang lebih ringkas, mudah dipahami, dan mampu menangani berbagai variasi format data.

Hubungi Kami

Kantor Berkreasi
Alamat :
Pens Sky Venture - Sukolilo Surabaya
Karangrejo Tmur 17 Surabaya

Email : kantor.berkreasi@gmail.com
WA : wa.me/6287761589881  
(Support  Mbak Ana)

Tim Pengembang

Dr. Rojabi Azharghany, M.Si, S.Sos
Dr. H. Agus Sulthoni Imami, S.Psi. M.Pd.I.
Ali Ishaq, M.Pd.
Didik Rahwiniyanto, S.Si., M.Pd.
Mujiburrohman, M.Pd.
Mohammad Zikky, S.ST, M.T
Amien sawedi, S.Pd.
Didik P Wicaksono, M.Pd.