Bu dosya, seçilen bir alandaki hücreleri yazı rengine göre saymak için hazırlanmış örnek bir çalışma kitabıdır. Sayım, RenkSay adlı kullanıcı tanımlı fonksiyon (KTF) ile yapılır. Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir.
Dosyanın içeriği
- Sayfa1: B1:S20 aralığında 1'den 14'e kadar numaralandırılmış hücreler bulunur. B2 hücresinde 1 ve 2, 20. satırda ise 3'ten 14'e kadar olan değerler yer alır. Hücrelerdeki yazı renkleri sayım için örnek veri olarak kullanılır.
- Module1: RenkSay fonksiyonunu barındıran VBA modülüdür (21 satır).
Makrolar
- RenkSay(Alan, RenkNo): İki bağımsız değişken alır. Alan taranacak hücre aralığı, RenkNo aranan yazı renginin ColorIndex numarasıdır. Fonksiyon alandaki her hücrenin yazı rengini kontrol eder; renk numarası eşleşen hücreleri sayar ve sonucu döndürür.
- Bir hücredeki yazı renkleri karışıksa (hücre içinde birden fazla renk varsa) fonksiyon hücrenin karakterlerini tek tek denetler. Aranan renkte en az bir karakter bulunan hücre bir kez sayılır.
- Fonksiyonda Application.Volatile kullanıldığından sonuç, çalışma sayfasında her hesaplama yapıldığında güncellenir.
- Kodda dosya silme, dışarıya bağlantı gibi zararlı bir işlem bulunmaz; yalnızca hücre yazı renkleri okunur.
Nasıl kullanılır
- Dosyayı açın ve makroları etkinleştirin.
- Sonucun görüneceği boş bir hücreye, sayılacak alanı ve renk numarasını vererek fonksiyonu yazın. Örneğin B2:S20 aralığında 3 numaralı renkteki (kırmızı) yazıları saymak için:
=RenkSay(B2:S20;3) - Başka bir renk için ikinci bağımsız değişkeni ilgili ColorIndex numarasıyla değiştirin.
- Hücrelerin yazı rengini değiştirdiğinizde sonucu güncellemek için F9 tuşuyla yeniden hesaplama yapın.
- Fonksiyonu kendi dosyanızda kullanmak için Module1 içindeki kodu kendi çalışma kitabınıza bir modül olarak ekleyin ve dosyayı makro destekli (.xlsm) kaydedin.