VBA, değerleri karşılaştırmak için karşılaştırma operatörlerini kullanmanıza olanak tanır. Bu operatörleri kullanarak değerleri karşılaştırabilir ve sonuç olarak Boolean True veya False döndürebilirsiniz.
VBA'daki Ana Karşılaştırma Operatörlerinin Listesi
İlk olarak, VBA kodunda kullanılabilecek karşılaştırma operatörlerinin listesini görüntüleyeceğiz:
Karşılaştırma Operatörü | Açıklama |
= |
Eşittir |
Eşit değil |
|
> |
daha büyük |
>= |
Büyüktür veya Eşittir |
< |
Daha az |
<= |
Küçük veya Eşit |
Eşittir
NS Eşittir operatör, iki değerin eşit olup olmadığını kontrol eder ve True veya False değerini döndürür. İşte örnek kod:
123456789101112 | Tamsayı Olarak Dim intADim intB Tamsayı OlarakDim blnResult As BooleintA = 5intB = 5intA = intB iseblnResult = DoğruBaşkablnResult = YanlışBitir |
Bu örnekte, olup olmadığını kontrol etmek istiyoruz. intA eşittir intB. Bu doğruysa, Boole değeri blnSonuç True olacak, aksi takdirde False olacaktır.
İlk olarak, değerlerini belirledik intA ve intB 5'e:
12 | intA = 5intB = 5 |
Bundan sonra, kullanıyoruz = değerlerinin olup olmadığını kontrol etmek için If ifadesindeki operatör intA ve intB eşittir:
12345 | intA = intB iseblnResult = DoğruBaşkablnResult = YanlışBitir |
Her iki değişken de 5'e eşittir, bu nedenle blnSonuç True döndürür:
Resim 1. Eşittir operatörünü kullanma
Eşit değil
NS Olumsuz Eşittir operatör, iki değerin eşit olup olmadığını kontrol eder ve True veya False değerini döndürür. İşte örnek kod:
Bir hata oluştu. Lütfen daha sonra tekrar deneyiniz. |
Bu örnekte, olup olmadığını kontrol etmek istiyoruz. intA eşit değildir intB. Bu doğruysa, Boole değeri blnSonuç True olacak, aksi takdirde False olacaktır.
kullanıyoruz değerlerinin olup olmadığını kontrol etmek için If ifadesindeki operatör intA ve intB farklıdır:
12345 | Eğer intA intB iseblnResult = DoğruBaşkablnResult = YanlışBitir |
Değeri intA 5 ve değeri intB 6'dır, değişkenler eşit değildir, bu nedenle blnSonuç True döndürür:
Resim 2. Eşit Değil operatörünü kullanma
Büyüktür
NS daha büyük operatör, ilk değerin ikinci değerden büyük olup olmadığını kontrol eder ve True veya False değerini döndürür. İşte örnek kod:
123456789101112 | Tamsayı Olarak Dim intADim intB Tamsayı OlarakDim blnResult As BooleintA = 6intB = 5intA > intB iseblnResult = DoğruBaşkablnResult = YanlışBitir |
Bu örnekte, olup olmadığını kontrol etmek istiyoruz. intA daha büyüktür intB. Bu doğruysa, Boole değeri blnSonuç True olacak, aksi takdirde False olacaktır.
Ayrıca, kullandığımız > operatörünün değerinin olup olmadığını kontrol etmek için If ifadesinde intA daha büyüktür intB:
12345 | intA > intB iseblnResult = DoğruBaşkablnResult = YanlışBitir |
Sonuç olarak,intA daha büyüktür intB, NS blnSonuç True döndürür:
Resim 3. Büyüktür operatörünü kullanma
Büyüktür veya Eşittir
NS Büyüktür veya Eşittir operatör, ilk değerin ikinci değerden büyük veya ona eşit olup olmadığını kontrol eder ve True veya False değerini döndürür. İşte örnek kod:
123456789101112 | Tamsayı Olarak Dim intADim intB Tamsayı OlarakDim blnResult As BooleintA = 5intB = 5intA >= intB iseblnResult = DoğruBaşkablnResult = YanlışBitir |
Bu örnekte, olup olmadığını kontrol etmek istiyoruz. intA büyüktür veya eşittir intB. Bu doğruysa, Boole değeri blnSonuç True olacak, aksi takdirde False olacaktır.
>= operatörünün değerinin olup olmadığını kontrol etmek için If ifadesinde intA büyüktür veya eşittir intB:
12345 | intA >= intB iseblnResult = DoğruBaşkablnResult = YanlışBitir |
Sonuç olarak, her iki değişken de 5'e eşit olduğundan, blnSonuç True döndürür:
Resim 4. Büyüktür veya Eşittir operatörünü kullanma
Daha az
NS Daha az operatör, ilk değerin ikinci değerden küçük olup olmadığını kontrol eder ve True veya False değerini döndürür. İşte örnek kod:
123456789101112 | Tamsayı Olarak Dim intADim intB Tamsayı OlarakDim blnResult As BooleintA = 5intB = 6intA < intB iseblnResult = DoğruBaşkablnResult = YanlışBitir |
Bu örnekte, olup olmadığını kontrol etmek istiyoruz. intA daha az intB. Bu doğruysa, Boole değeri blnSonuç True olacak, aksi takdirde False olacaktır.
kullanıyoruz < operatörünün değerinin olup olmadığını kontrol etmek için If ifadesinde intA daha az intB:
12345 | intA < intB iseblnResult = DoğruBaşkablnResult = YanlışBitir |
Olarak intA daha az intB, NS blnSonuç True döndürür:
Resim 5. Küçüktür operatörünü kullanma
Küçüktür veya Eşittir
NS Daha az veya Eşittir operatör, ilk değerin küçük veya eşit olup olmadığını kontrol eder ve True veya False değerini döndürür. İşte örnek kod:
123456789101112 | Tamsayı Olarak Dim intADim intB Tamsayı OlarakDim blnResult As BooleintA = 5intB = 5intA <= intB iseblnResult = DoğruBaşkablnResult = YanlışBitir |
Bu örnekte, olup olmadığını kontrol etmek istiyoruz. intA küçük veya eşittir intB. Bu doğruysa, Boole değeri blnSonuç True olacak, aksi takdirde False olacaktır.
kullanıyoruz <= operatörünün değerinin olup olmadığını kontrol etmek için If ifadesinde intA küçük veya eşittir intB:
12345 | intA <= intB iseblnResult = DoğruBaşkablnResult = YanlışBitir |
Sonuç olarak, her iki değişken de 5'e eşit olduğundan, blnSonuç True döndürür:
Resim 6. Küçüktür veya Eşittir operatörünü kullanma
Operatör
Is Operator, iki nesne değişkeninin aynı nesneyi içerip içermediğini test eder:
12345678910111213 | Alt CompareObjects()Dim ws1 As Worksheet, ws2 As Worksheetws1 = Sayfaları ayarla("Sayfa1")ws2 = Sayfaları ayarla("Sayfa2")Eğer ws1 ws2 iseMsgBox "Aynı WS"BaşkaMsgBox "Farklı WS'ler"BitirAlt Bitiş |
Operatör gibi
Like Operatörü, tam olmayan metin eşleşmelerini bulmak için kullanılabilir. Bu örnek, bir dizenin "Mr" ile başlayıp başlamadığını test edecektir.
1234567891011121314 | Alt LikeDemo()Dim strName As StringDim blnResult As BoolestrName = "Bay Michael James"strName "Mr*" Gibiyse O zamanblnResult = DoğruBaşkablnResult = YanlışBitirAlt Bitiş |
Dizeleri nasıl karşılaştıracağınızı öğrenmek istiyorsanız, buraya tıklayın: VBA Dizeleri Karşılaştır - StrComp
Karşılaştırma operatörlerinin nasıl kullanılacağını öğrenmek istiyorsanız, buraya tıklayın: VBA Mantıksal Operatörler