Excel VBA’daki bu program, bir seçimi test etmek için Count özelliğini, IsNumeric işlevini, IsEmpty işlevini ve Intersect yöntemini kullanır.
Durum:
Çalışma sayfanıza bir komut düğmesi yerleştirin ve aşağıdaki kod satırlarını ekleyin:
- İlk olarak, iki Range nesnesi tanımlıyoruz. Range nesnelerini aralik ve hücre olarak adlandıralım:
Dim aralik As Range, hucre As Range
Code language: VB.NET (vbnet)
- aralik nesnesini Range(“B3:D11”) ile ve hücre nesnesini seçilen aralık ile başlatıyoruz.
Set aralik = Range("B3:D11")
Set hucre = Selection
Code language: VB.NET (vbnet)
- Aşağıdaki kod satırlarını ekleyin:
If hucre.Count = 1 And IsNumeric(hucre) And Not IsEmpty(hucre) And Not Intersect(aralik, hucre) Is Nothing Then
MsgBox "DOĞRU"
Else
MsgBox "YANLIŞ"
End If
Code language: VB.NET (vbnet)
Açıklama: Intersect(aralik, hucre), iki aralığın kesişimini temsil eden bir Aralık nesnesi döndürür. Bu aralık nesnesi Hiçbir şey değilse, tek sayı (ilk üç koşul) sınırlanmış aralıktadır.
- Programı test edin.
Yalnızca kenarlıklı aralıkta tek bir sayı seçtiğinizde sonuç şöyle olacaktır:
Diğer tüm durumlarda sonuç şöyle olacaktır:
Tüm kodlar
Dim aralik As Range, hucre As Range
Set aralik = Range("B3:D11")
Set hucre = Selection
If hucre.Count = 1 And IsNumeric(hucre) And Not IsEmpty(hucre) And Not Intersect(aralik, hucre) Is Nothing Then
MsgBox "DOĞRU"
Else
MsgBox "YANLIŞ"
End If
Code language: VB.NET (vbnet)