Vba: boş hücreleri yukarıdaki değerle doldurma


Çoğu zaman, bir Excel sayfasındaki boş hücreleri doğrudan üstlerindeki hücrelerin değerleriyle doldurmak için VBA’yı kullanmak isteyebilirsiniz.

Bunu yapmak için aşağıdaki temel sözdizimini kullanabilirsiniz:

 Sub Fill_From_Above()
  With Range(" A2:B " & Range(" C " & Rows.Count).End(xlUp).Row)
    .SpecialCells(xlBlanks).FormulaR1C1 = " =R[-1]C "
    .Value = .Value
  End With
End Sub

Bu özel örnek, A2 hücresinden B sütununa ve C sütununda bir değer içeren son satıra kadar tüm boş hücreleri dolduracaktır.

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

Örnek: Boş hücreleri yukarıdaki değerle doldurmak için VBA’yı kullanın

Farklı basketbol oyuncularının çeşitli oyunlarda attığı sayıları gösteren Excel’de aşağıdaki veri setine sahip olduğumuzu varsayalım:

A ve B sütunlarındaki boş hücreleri, üstlerindeki hücrelerin değerleriyle doldurmak istediğimizi varsayalım.

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

 Sub Fill_From_Above()
  With Range(" A2:B " & Range(" C " & Rows.Count).End(xlUp).Row)
    .SpecialCells(xlBlanks).FormulaR1C1 = " =R[-1]C "
    .Value = .Value
  End With
End Sub

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

Takım ve Oyuncu sütunlarındaki tüm boş hücrelerin, üstlerindeki hücrelerden uygun değerle doldurulduğunu unutmayın.

Not : Aralıktaki boş hücreleri tanımlamak için xlBlanks’ı kullandık, ardından boşlukları bir satır yukarıdaki hücrenin değeriyle doldurmak için =R[-1]C’yi kullandık.

Sonuç olarak tüm boş hücreleri üstlerindeki hücrelerin değeriyle doldurabildik.

Ek kaynaklar

Aşağıdaki eğitimlerde VBA’da diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:

VBA: Hücrenin boş olup olmadığı nasıl kontrol edilir
VBA: “Boş değilse” nasıl kullanılır?
VBA: Belirli bir metin içeren hücreler nasıl sayılır?

Yorum ekle

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