Cara menggunakan wildcard di vba (dengan contoh)


Anda dapat menggunakan operator Suka di VBA dengan wildcard bawaan berikut untuk mencari pola tertentu dalam string:

  • * : Cocok dengan sejumlah karakter apa pun
  • ? : Cocok dengan satu karakter
  • # : sesuai dengan satu digit
  • [] : cocok dengan karakter apa pun dalam jangkauan

Contoh berikut menunjukkan cara menggunakan wildcard ini dalam praktiknya.

Contoh 1: Gunakan *Wildcard untuk mencari substring

Misalkan kita memiliki daftar makanan berikut di kolom A:

Kita dapat membuat makro berikut untuk mencari substring “panas” di setiap string di kolom A dan menampilkan hasilnya di kolom B:

 Sub FindString()

    Dim i As Integer
    
    For i = 2 To 10
        If Range(" A " & i) Like " *hot* " Then
            Range(" B " & i) = " Contains hot "
        Else
            Range(" B " & i) = " Does Not Contain hot "
        End If
    Next i
    
End Sub

Saat kami menjalankan makro ini, kami menerima keluaran berikut:

Contoh 2: Gunakan karakter wildcard * untuk mencari string yang diakhiri dengan suatu pola

Misalkan kita memiliki daftar nama tim bola basket berikut di kolom A:

Kita dapat membuat makro berikut untuk mencari string di kolom A yang diakhiri dengan “ets” dan menampilkan hasilnya di kolom B:

 Sub FindEndingString()

    Dim i As Integer
    
    For i = 2 To 10
        If Range(" A " & i) Like " *ets " Then
            Range(" B " & i) = " Ends in ets "
        Else
            Range(" B " & i) = " Does Not End in ets "
        End If
    Next i
    
End Sub

Saat kami menjalankan makro ini, kami menerima keluaran berikut:

Contoh 3: Gunakan wildcard # untuk mencari nomor

Misalkan kita memiliki daftar string berikut di kolom A:

Kita bisa membuat makro berikut untuk mencari string di kolom A yang berisi angka dan menampilkan hasilnya di kolom B:

 SubFindNumbers ()

    Dim i As Integer
    
    For i = 2 To 10
        If Range(" A " & i) Like " *#* " Then
            Range(" B " & i) = " Contains Numbers "
        Else
            Range(" B " & i) = " Does Not Contain Numbers "
        End If
    Next i
    
End Sub

Saat kami menjalankan makro ini, kami menerima keluaran berikut:

Contoh 4: Gunakan wildcard [] untuk mencari beberapa karakter

Misalkan kita memiliki daftar nama tim bola basket berikut di kolom A:

Kita bisa membuat makro berikut untuk mencari kolom A untuk string yang berisi r, s, atau t di suatu tempat di nama tim dan menampilkan hasilnya di kolom B:

 Sub FindSpecificLetters()

    Dim i As Integer
    
    For i = 2 To 10
        If Range(" A " & i) Like " *[rt]* " Then
            Range(" B " & i) = " Contains r, s, or t "
        Else
            Range(" B " & i) = " Does Not Contain r, s or t "
        End If
    Next i
    
End Sub

Saat kami menjalankan makro ini, kami menerima keluaran berikut:

Catatan : Anda dapat menemukan dokumentasi wildcard VBA lengkap di sini .

Sumber daya tambahan

Tutorial berikut menjelaskan cara melakukan tugas umum lainnya menggunakan VBA:

VBA: Cara menghitung kemunculan karakter dalam sebuah string
VBA: cara memeriksa apakah suatu string berisi string lain
VBA: Cara menghitung sel dengan teks tertentu

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *