Bu dosya, bir sütundaki hücrelerin dolgu renklerini VBA ile okuyarak her renkten kaç hücre bulunduğunu sayar. Renkler ayrı bir sayfada benzersiz olarak listelenir ve yanlarına adetleri yazılır.
Dosyanın içeriği
- Sayfa1: A1:A296 aralığında farklı renklere boyanmış hücreler bulunur. Sayfada makroyu çalıştıran bir düğme (CommandButton1) yer alır.
- renkler: Bu sayfa dosyada hazır gelmez; makro çalışınca otomatik olarak eklenir. A sütununda renkler, B sütununda her rengin adedi listelenir.
Makrolar
Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir. Dosya .xlsm biçimindedir.- CommandButton1_Click: Sayfa1 üzerindeki düğmeye tıklanınca çalışır. Önce renkler adlı yeni bir sayfa ekler. Ardından A1:A296 aralığındaki her hücrenin dolgu renk indeksini (Interior.ColorIndex) renkler sayfasının A sütununa yazar ve listeyi artan sırada sıralar. Dolgusu olmayan hücrelerin değeri (-4142) listeden silinir.
- Sıralı listede yan yana aynı değere sahip satırlar tek satırda birleştirilir ve B sütununa o rengin adedi yazılır.
- Son adımda A sütunundaki her değer, ilgili renge boyanan hücreye dönüştürülür ve sayı içeriği temizlenir. Böylece her rengin örneği ve yanında adedi görülür.
- İşlem sırasında Application.ScreenUpdating kapatılır, bitince açılır. Kod dosya silme veya dışarıya bağlantı gibi işlemler içermez.
Nasıl kullanılır
- Dosyayı açın ve makroları etkinleştirin.
- Sayfa1 sütunundaki hücreleri sayılacak renklere boyayın; şablonda renkli örnek veri hazır olarak gelir.
- Sayfa1 üzerindeki düğmeye tıklayın.
- Oluşan renkler sayfasında benzersiz renkleri ve B sütunundaki adetleri inceleyin.
- Makro her çalıştığında renkler adlı yeni bir sayfa eklemeye çalışır. Aynı adlı sayfa varsa makro hata verir; bu nedenle yeniden saymadan önce mevcut renkler sayfasını silin.