VBA Kullanarak Hücreleri İç Renge Göre Sayma - Excel İpuçları

Emily soruyor:

Lütfen belirli bir arka plan rengine sahip hücrelerin sayısını saymak için formüler çözümü önerebilir misiniz (yani, bu hücreler bazı veriler içerir ancak bunları saymak için renk önemlidir).

Mantıksal olarak standart bir formül izlemesi gerektiğini düşünüyorum.

CountIF(A01:A55,"backgroundcolour=red")

Kırmızı rengin 3 numara ile tanımlanması gerektiğine inanıyorum (yardım dosyasına göre)

Arka plan hücre rengini nasıl kodlayacağımı bilmem gerekiyor, yani colorfill ?, backgroundcolour ?, interior.color?… ???

Emily - keşke bu kadar kolay olsaydı. VBA'da Kullanıcı Tanımlı İşleve sahip olmanız gerekir. İşlevin kodu aşağıdadır. Bunu çalışma kitabındaki yeni bir kod modülüne girmeniz gerekir.

Kodu girdikten sonra şu formülü kullanabilirsiniz:

=CountColor(A1:A99,D2)

D2, saymak istediğiniz arka plan biçimine sahiptir.

İşte kod:

Function CountColor(Rng As Range, RngColor As Range) As Integer Dim Cll As Range Dim Clr As Long Clr = RngColor.Range("A1").Interior.Color For Each Cll In Rng If Cll.Interior.Color = Clr Then CountColor = CountColor + 1 End If Next Cll End Function

Ilginç makaleler...