Vba: "hücre şunları içeriyorsa" için basit bir formül


VBA’da “hücre şunları içeriyorsa” formülünü kullanmak için aşağıdaki temel sözdizimini kullanabilirsiniz:

 Sub IfContains()
    Dim i As Integer

    For i = 2 To 8
        If InStr(1, LCase(Range(" A " & i)), " turtle ") <> 0 Then
        Result = " Contains Turtle "
        Else
        Result = “ Does Not Contain TurtleEnd If
    Range(" B " & i) = Result
    Next i
End Sub

Bu özel örnek, A2:A8 aralığındaki her hücrenin “kaplumbağa” içerip içermediğini kontrol eder, ardından B2:B8 aralığında eşleşen her hücreye “Kaplumbağa içerir” veya “Kaplumbağa içermez” ifadesini atar.

Not : Instr yöntemi, bir dizenin başka bir dize içerip içermediğini kontrol eder ve LCase yöntemi, büyük/küçük harfe duyarlı olmayan bir arama gerçekleştirmek için metni küçük harfe dönüştürür.

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

Örnek: VBA’da “Hücre içeriyorsa” nasıl kullanılır?

Excel’de her biri farklı metin içeren aşağıdaki hücre listesine sahip olduğumuzu varsayalım:

A2:A8 aralığındaki her hücrenin “kaplumbağa” metnini içerip içermediğini kontrol etmek ve sonuçları B2:B8 aralığında karşılık gelen hücrelerde görüntülemek istediğimizi varsayalım.

Bunun için aşağıdaki makroyu oluşturabiliriz:

 Sub IfContains()
    Dim i As Integer

    For i = 2 To 8
        If InStr(1, LCase(Range(" A " & i)), " turtle ") <> 0 Then
        Result = " Contains Turtle "
        Else
        Result = “ Does Not Contain TurtleEnd If
    Range(" B " & i) = Result
    Next i
End Sub

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

B sütunu, A sütunundaki karşılık gelen hücrelerin metnin herhangi bir yerinde “kaplumbağa” ifadesini içerip içermediğini bize söyler.

Not : VBA Instr yöntemine ilişkin tüm belgeleri burada bulabilirsiniz.

Ek kaynaklar

Aşağıdaki eğitimlerde VBA’da diğer ortak 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

Yorum ekle

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