Dinamik Koşullu Biçimlendirme, bir hücre aralığındaki değerleri, başka hücre aralığındaki renklere göre makrolar ile biçimlendirmektedir.
Bir soru kapsamında hazırlanan dosya, bu içerikte öğretici olarak paylaşılmaktadır. Sorunun kapsamında, üst resimde görünen “Malzeme” başlığında yazılı kelimelerin, “Renkler” başlığındaki renkler gibi olması istenmektedir. Normal şartlarda, Koşullu Biçimlendirme‘nin “Yalnızca şunu içeren hücreleri biçimlendir” kuralı ile tek tek istenen biçimlendirme yapılmaktadır. Lakin, veri tablosu ve kriter tablosu artıp azalacağından, bu işlemin dinamik olarak yapılması gerekmektedir. Ancak, bu dinamik yapının manuel olmamasının tek yolu, makroları kullanmaktan geçmektedir. Bunun dışında yapılan tüm işlemleri manuel olması gerekmektedir. Dosyamızda da, bu dinamik yapının nasıl olduğu öğretilmektedir.
Anlaşılacağı üzere, işlemlerin yapılması için makro kullanılmıştır. Dosyayı indirenler, iki ayrı makro görecekler. İlk makro, koşul ekleme işlemini gerçekleştirmektedir. Burada yöntemde, ilk önce verilerin olduğu hücre aralığı dinamik bir yapında tanımlanmıştır.
Set MyRange = Sayfa1.Range(Sayfa1.Cells(1, 2), Sayfa1.Cells(Sayfa1.Rows.Count, 3))
Üstteki kod parçacığı, B sütununda bulunan “Malzeme” başlığındaki değerlerin seçilmesini sağlamaktadır. Daha sonra, “Renkler” başlığı altındaki değerlerin arka plan renklerini almak için bir döngü oluşturulmuştur.
For j = 3 To Sayfa1.Cells(Sayfa1.Rows.Count, 4).End(xlUp).Row ... Kodlar ... Next j
Üstteki kod parçacağı ise, 4. sütunun 3. satırından başlayan ve son dolu hücreye kadar dönecek bir döngüyü ifade etmektedir. Yani, verilerimiz bu döngü içinde dönecek ve hücrenin değerlerini alıp, malzeme isimlerine uygulayacaktır.
Yapılan işlemler,
- Hücrenin arka plan renginin alınması,
- Hücrenin yazı renginin alınması,
- Hücrenin Yazı renginin koyu olması,
- Hücrenin kenarlık yapısının eklenmesi
şeklindedir.
Diğer makro ise, koşulların temizlenmeni gerçekleştiren basit bir kod parçacığıdır.
Verilerin renklenmesi için ilave olarak iki ayrı Kullanıcı Tanımlı Fonksiyon tanımlanmıştır. Bu iki fonksiyon benzer yapıdadır. Ancak, bir tanesi arka plan renklendirmesini, diğeri ise yazı renginin renklendirilmesini sağlamaktadır. Her iki fonksiyonda, koşul ekle olarak yazılan makroda referans niteliğinde kullanılmaktadır.
Görüleceği üzere, eğer koşullu biçimlendirme işlemini dinamik bir yapıda oluşturmak isterseniz; bunun tek altenatifi makro kullanmaktır. Bunun ne yazık ki başka bir yolu yoktur. Eğer, makro kullanılmayacaksa, geriye kalan tek alternatif, tek tek koşullu biçimlendirme kuralları oluşturmaktır.
Dinamik Koşullu Biçimlendirme faydalanmanız temennisiyle.
[button color=”black” size=”medium” link=”https://www.exceldepo.com/dosyalar/dinamik-kosullu-bicimlendirme.12415/” icon=”fa-download” target=”true” nofollow=”false” sponsored=”true”]Excel İndir[/button]