Bu eğitim size VBA kullanarak Hücre Değerleri ile nasıl etkileşim kuracağınızı öğretecektir.
Hücre Değerini Ayarla
Bir Hücre Değeri ayarlamak için, Aralık veya Hücreler nesnesinin Değer özelliğini kullanın.
Range.Value & Cells.Value
VBA'da hücreye/hücrelere başvurmanın iki yolu vardır:
- Menzil Nesnesi - Aralık(“A2”).Değer
- Hücreler Nesne - Hücreler(2,1).Value
Range nesnesi, standart "A1" gösterimini kullanarak bir hücreye başvurmanıza olanak tanır.
Bu, A2'nin değeri = 1 aralığını ayarlayacaktır:
1 | Aralık("A2").Değer = 1 |
Cells nesnesi, bir hücreye satır numarasına ve sütun numarasına göre başvuru yapmanızı sağlar.
Bu, A2'nin değerini = 1 olarak ayarlayacaktır:
1 | Hücreler(2,1).Değer = 1 |
Önce satır numarasını girdiğinize dikkat edin:
1 | Hücreler(Satır_sayısı, Sütun_sayısı) |
Aynı Anda Birden Fazla Hücrenin Değerini Ayarlayın
Tek bir hücreye başvurmak yerine, bir hücre aralığına başvurabilir ve tüm hücre değerlerini bir kerede değiştirebilirsiniz:
1 | Aralık("A2:A5").Değer = 1 |
Hücre Değerini Ayarla - Metin
Yukarıdaki örneklerde hücre değerini bir sayıya (1) eşitledik. Bunun yerine, hücre değerini bir metin dizisine eşit olarak ayarlayabilirsiniz. VBA'da tüm metin alıntılarla çevrelenmelidir:
1 | Aralık("A2").Value = "Metin" |
Metni alıntılarla çevrelemezseniz, VBA bir değişkene atıfta bulunduğunuzu düşünecektir…
Hücre Değerini Ayarla - Değişken
Bir değişkene eşit bir hücre değeri de ayarlayabilirsiniz.
1234 | Dize olarak strText'i karartstrText = "Metin Dizesi"Aralık("A2").Value = strText |
Hücre Değerini Al
Yukarıda kullandığımız Value özelliğini kullanarak hücre değerlerini alabilirsiniz.
ActiveCell Değerini Alın
ActiveCell değerini almak ve bir mesaj kutusunda görüntülemek için:
1 | MsgBox ActiveCell.Value |
Değişkene Hücre Değeri Ata
Bir hücre değeri almak ve onu bir değişkene atamak için:
123 | Varyant olarak Dim varvar = Aralık("A1").Değer |
Burada Variant türünde bir değişken kullandık. Varyant değişkenleri her tür değeri kabul edebilir. Bunun yerine, bir String değişken türü kullanabilirsiniz:
123 | Dim var as Stringvar = Aralık("A1").Değer |
Bir String değişken türü sayısal değerleri kabul eder, ancak sayıları metin olarak saklar.
Hücre değerinizin sayısal olacağını biliyorsanız, Double değişken türünü kullanabilirsiniz (Çift değişkenler ondalık değerleri saklayabilir):
123 | Dim var as Doublevar = Aralık("A1").Değer |
Ancak, metin içeren bir hücre değerini bir double değişkende saklamaya çalışırsanız, bir tür uyuşmazlığı hatası alırsınız:
Diğer Hücre Değeri Örnekleri
Hücre Değerini Kopyala
Başka bir hücre değerine eşit bir hücre değeri ayarlamak (veya bir hücre değerini "Kopyalamak") kolaydır:
1 | Aralık("A1").Değer = Aralık("B1").Değer |
Bunu hücre aralıklarıyla bile yapabilirsiniz (aralıklar aynı boyutta olmalıdır):
1 | Aralık("A1:A5").Değer = Aralık("B1:B5").Değer |
Hücre Değerlerini Karşılaştır
Standart karşılaştırma operatörlerini kullanarak hücre değerlerini karşılaştırabilirsiniz.
Hücre değerlerinin eşit olup olmadığını test edin:
1 | MsgBox Range("A1").Value = Range("B1").Value |
Hücre değerleri eşitse TRUE değerini döndürür. Aksi takdirde YANLIŞ.
Hücre değerlerini karşılaştırmak için bir If İfadesi de oluşturabilirsiniz:
12345678910111213 | If Range("A1").Value > Range("B1").Value O zamanAralık("C1").Value = "Büyüktür"Elseif Aralığı("A1").Değer = Aralık("B1").Değer SonraAralık("C1").Value = "Eşit"BaşkaAralık("C1").Value = "Daha Az"Bitir |
Metni aynı şekilde karşılaştırabilirsiniz (VBA'nın Büyük/Küçük Harfe Duyarlı olduğunu unutmayın)