Vba'da like operatörü nasıl kullanılır (örneklerle)


Bir dizenin belirli bir kalıp içerip içermediğini belirlemek için VBA’da Like operatörünü kullanabilirsiniz.

Örneğin, A2:A10 hücre aralığındaki her dizenin “hot” alt dizesini içerip içermediğini kontrol etmek ve sonuçları B2:B10 aralığında görüntülemek için aşağıdaki sözdizimini kullanabilirsiniz:

 SubCheckLike ()

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

Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.

Örnek: VBA’da Like operatörü nasıl kullanılır?

Excel’de aşağıdaki yiyecek listesine sahip olduğumuzu varsayalım:

A sütunundaki her dizenin “hot” alt dizesini içerip içermediğini kontrol etmek ve sonuçları B sütununda görüntülemek için aşağıdaki makroyu oluşturabiliriz:

 SubCheckLike ()

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

Bu makroyu çalıştırdığımızda aşağıdaki çıktıyı alıyoruz:

B sütunu, A sütunundaki eşleşen her hücrenin “sıcak” alt dizeyi içerip içermediğini gösterir.

Herhangi bir karakterin hücredeki “sıcak” dizeden önce veya sonra gelebileceğini belirtmek için alt dizenin etrafında yıldız işareti ( * ) kullandığımızı unutmayın.

Bunun yerine her dizenin “hot” ile başlayıp başlamadığını kontrol etmek istersek, yalnızca alt dizeden sonra yıldız işareti koyabiliriz:

 SubCheckLike ()

Dim i As Integer
    
For i = 2 To 10
    If Range("A" & i) Like "hot*" Then
        Range("B" & i) = "Starts with hot"
    Else
        Range("B" & i) = "Does not start with hot"
    End If
Next i
    
End Sub

Bu makroyu çalıştırdığımızda aşağıdaki çıktıyı alıyoruz:

B sütunu , A sütunundaki eşleşen her hücrenin “sıcak” ile başlayıp başlamadığını gösterir.

Ek kaynaklar

Aşağıdaki eğitimlerde VBA kullanarak diğer genel görevlerin nasıl gerçekleştirileceği açıklanmaktadır:

VBA: Bir dizedeki karakterlerin oluşumları nasıl sayılır?
VBA: bir dizenin başka bir dize içerip içermediği nasıl kontrol edilir
VBA: Belirli bir metin içeren hücreler nasıl sayılır?

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir