Vba kullanarak bir hücreye değer nasıl girilir?

Önemli Notlar

Hücre değerini ayarla

Hücre değerini ayarlamak için “Değer” özelliğini kullanmanız, ardından ayarlamak istediğiniz değeri ayarlamanız gerekir. Burada bunu anlamanıza yardımcı olmak için bazı örnekler kullandım.

1. Hücreye bir değer girin

A1 hücresine “Bitti” değerini girmeniz gerektiğini varsayalım. Bu durumda kod aşağıdaki gibi olacaktır:

 Range("A1").Value = "Done"
hücre-değerini ayarla

Gördüğünüz gibi önce değer eklemek istediğim hücrenin adresini, ardından değer özelliğini ayarlıyorum. Sonunda, “Bitti” değerini çift tırnak içinde eşittir işareti “=” kullanarak atadım.

Aşağıdaki kod gibi “Hücreler” özelliğini de kullanabilirsiniz.

 Cells(1, 1).Value = "Done"

Yukarıdaki kod aynı zamanda A1 hücresine de atıfta bulunur.

Bunun dışında kullanabileceğiniz bir yol daha var o da value özelliğini kullanmayarak değeri doğrudan hücreye atamaktır.

 Cells(1, 1) = "Done"

Ancak hücreye değer girmek için value özelliğinin kullanılması önerilir.

Şimdi bir hücreye bir sayı girmek istediğinizi varsayalım. Bu durumda çift tırnak kullanmanıza gerek yoktur. Kodu aşağıdaki gibi yazabilirsiniz.

 Range("A1") = 99

Ayrıca VBA kodunu kullanarak bir hücreye tarih veya zaman damgası girmek için TARİH ve ŞİMDİ ( VBA İşlevleri ) de kullanabilirsiniz.

 Range("A1").Value = Date Range("A2").Value = Now

Aktif hücreye bir değer girmek istiyorsanız ihtiyacınız olan kod şöyle olacaktır:

 ActiveCell.Value = Date

2. Giriş kutusunu kullanma

Kullanıcının hücreye girilecek değeri belirtmesini istiyorsanız giriş kutusunu kullanabilirsiniz. A1 hücresine değer girmek istediğinizi varsayalım, kod şöyle görünecektir:

değer için-giriş kutusunu kullan
 Range("A1").Value = _ InputBox(Prompt:="Type the value you want enter in A1.")

Yukarıdaki kodda A1 hücresinin değeri, kullanıcının girdiği değeri döndüren giriş kutusunun döndürdüğü değere atanmaktadır.

3. Başka bir hücreden

Hücre değerini başka bir hücrenin değerini kullanarak da ayarlayabilirsiniz. Diyelim ki B1 hücresinden A1 hücresine değer eklemek istiyorsunuz, kod şöyle olacaktır:

 Range("A1") = Range("B1").Value
başka bir hücrenin değerini kullanarak hücre değerini ayarlama

Value özelliğini kullanmadan da B1 hücresine başvurabilirsiniz.

 Range("A1") = Range("B1")

4. Değeri tüm aralıkta ayarlayın

Tek bir hücre yerine birden fazla hücreye veya hücre aralığına değer girmek istediğinizi düşünün, bu durumda aşağıdaki gibi bir kod yazmanız gerekiyor:

 Range("A1:A10").Value = Date Range("B1, B10").Value = Now
değeri tüm aralıkta ayarlayın

Kodun ilk satırında A1 hücresinden A10’a kadar tüm aralık bulunur ve ikinci satırda iki B1 ve B10 hücresi vardır.

Hücre değerini al

Söylediğim gibi, bir hücrenin değerini elde etmek için aynı değer özelliğini kullanabilirsiniz.

1. ActiveCell’in değerini alın

Diyelim ki aktif hücrenin değerini almak istiyorsunuz, bu durumda aşağıdaki kodu kullanmanız gerekiyor.

 ActiveCell.Value = Range("A1")
hücre değerini al

Yukarıdaki kodda, etkin hücrede değer özelliğini kullandınız ve ardından bu değeri A1 hücresine atadınız.

2. Bir değişkene atayın

Ayrıca bir hücreden bir değer alıp bunu bir değişkene atayabilirsiniz.

bir değişkene atamak

Şimdi yukarıdaki kodda veri türü olarak date olan “i” değişkenine sahipsiniz. Kodun ikinci satırında A1 hücresinin değeri değişkene atanır.

3. Mesaj Kutusunda Görüntüleme

Şimdi bir mesaj kutusu kullanarak A1 hücresinin değerini görüntülemek istediğinizi düşünün. Bu durumda kod aşağıdaki gibi olacaktır.

 MsgBox Range("A1").Value
msgbox'ta görüntüle

Yukarıdaki kodda mesaj kutusu A1 hücresindeki değeri alıp kullanıcıya gösterecektir.

msgbox-değer alma

Hücre değerini değiştir

Ayrıca bir hücre değerinde de değişiklik yapabilirsiniz, burada bunu anlamanıza yardımcı olabilecek bazı örnekleri paylaştım.

1. Mevcut bir numaraya numara ekleyin

Diyelim ki A1 hücresindeki sayıya bir tane daha eklemek istiyorsanız aşağıdaki kodu kullanabilirsiniz.

 Range("A1").Value = Range("A1").Value + 1

Yukarıdaki kod, A1 hücresinin değerini alıp ona bir ekleyerek A1 hücresine bir değer atar. Ancak, yalnızca hücrede bir sayı olduğunda değiştirilecek bir koşulu yazmak için VBA IF THEN ELSE komutunu da kullanabilirsiniz.

 If IsNumeric(Range("A1").Value) Then Range("A1").Value = Range("A1").Value + 1 End If

2. Hücredeki ilk karakteri silin

Şimdi aşağıdaki kod, hücre değerinden ilk karakteri kaldırır ve değerin geri kalanını hücreye atar.

 Range("A1").Value = Right(Range("A1").Value, Len(Range("A1").Value) - 1)

Yorum ekle

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir