Bu siteye giriş yaparak Çerez kullanımını kabul etmiş oluyorsunuz. İşbu sitede; çerez olarak, sadece son giriş tarihiniz ve eğer üye olursanız oturum statünüz tutulacaktır. Bunlar dışında başka hiçbir bilgi tutulmamaktadır. Çerezler için detaylı bilgi için buraya tıklayınız.
ANLADIM

DUYURULAR

Yeni eklenen ve/veya güncellenen sayfaları görmek için buraya tıklayınız.

Güncel ödev ve test listesini görmek için buraya tıklayınız.

Sitede yapılan iyileştirmeAer ve hata düzeltmelerine ait tüm bilgilendirmeleri görmek içinburaya tıklayınız.

Baş
Udemy
Konular
Son
Konular
ConditionalFormatting
HomeMenusu
Excel
ExcelHome Menüsü1

Conditional Formatting

Bu bölümde Conditional Formatting(Bundan sonra CF olarak geçecek) işlemlerini baştan anlatmayacağım ve genel olarak ne işe yaradığını bildiğinizi varsayıyorum. Şimdi birkaç örnekle çeşitli püf noktalarına ve az bilinen kullanım şekillerine bakalım.

Öncesinde, CF'ı sadece Greater/Less than veya Top/Bottom 10 şeklinde değil, aşağıdaki diğer özellikleri de içerecek şekilde kullanmanızı öneririm. Mesela, mükerrer(duplike) kayıtlarınızı bulmak için başka bir sütuna COUNTIF formülü yazıp oraya ">1" filtresi uygulamak yerine doğrudan Duplicate Values CF'ını uygulayabilir ve ilgili renge filtre koyabilirsiniz. Veya ortalamanın altında/üstünde kalanları filtrelemek için bir yere ortalama formül yazıp onunla karşılaştırma yapmanıza gerek yok, bunu direkt yapmanızı sağlayan seçenekler de var. Özetle diğer seçenekleri de biraz kurcalayın derim.

Yüzdesel eşikler belirleme

CF'da en sık karıştırılan konulardan biri, belirli yüzdesel eşiklerin altını/üstünü formatlı göstermektir. Malesef bana göre bu konuda Microsoft hatalı yönlendirmede bulunmakta, daha doğrusu gerekli yönlendimeyi yapmamaktadır. İşin doğrusunu öğrenene kadar bayağı bir araştırma yapmanız gerekmektedir.

Örneğin aşağıdaki tabloda D kolonuna CF uygulayacacağız. Diyeceğiz ki %100 ve üzerini en iyi olarak(yeşil ikon), %90-100 arasını orta(sarı ikon), 90 altını da kötü(kırmızı ikon) olarak göster.

Aşağıdaki ikon stini uyguladım

CF, otomatik olarak 33  ve 67 şeklinde ayarladı. Ben gittim bunu 90 ve 100 olarak değiştirdim.

Sonuç şöyle:

Gördüğünüz gibi %100 ve üzerinde 6 bölge olmasına rağmen sadece birini yeşil yaptı, 90-100 arası 1 bölge olmasına rağmen hiç sarı yapmadı. Neden böyle oldu?

Çünkü Excel, buradaki verilerin en düşüğünü %0, en yükseğini %100 varsayarak yeni bir değer hesaplıyor ve onun üzerinden CF uyguluyor. Zaten ilk başta %33 ve %67 diye otomatik ayırmasının sebebi de bu. Değerleri %0 ve %100 arasında olacak şekilde diziyor, 3 dilim belirliyor, ve rakamları bu 3 dilim içine yerleştiriyor. Uygulanan formül şöyle:

=(D2-MIN(D:D))/(MAX(D:D)-MIN(D:D))

Buna göre hesaplanmış HG%ler E kolonundaki gibi oluyor ve bu değerlere göre CF uygulandığında da sonuç gayet normal(!). %100 ve üzerinde sadece 1 bölge var, 90-100 arasında ise hiç yok.

Bizim istediğimiz ise böyle birşey değildi. O yüzden Percent ifadesinin bizi yanıltmasına izin vermeyelim ve Number seçeneğini aşağıdaki gibi ayarlayalım.

Sonuç:

Başka hücrelere göre göreceli referansla formatlama

Sıklıkla, formatlama işlemi komşu veya başka hücrelere göre yapılmaktadır. Mesela format uygulayacağımız  hücre bu yılın artış oranını, bir yan hücre ise geçen yılın artış oranını veriyordur. Bu  yılın artış oranı geçen yılın artış oranından büyükse/küçükse şöyle şöyle formatla diyebiliriz. Ancak burda bazı nüanslar var. Şimdi bunlara bakalım.

CF'da karıştırılan, anlaşılması zor olan bir konu da mutlak ve göreceli başvurulardır, ki bu konu formüle dayalı CF'in can damarını oluşturmaktadır. Eğer bu konu tam anlaşılamazsa CF de verimli ve etkin kullanılamaz. Mutlak/Göreceli başvuru tipleri için buraya bakabilirsiniz. Özetle CF dilinde "=$A$1", "=$A1", "=A$1" ve "=A1" tamamen farklı sonuçlar üretir. Örnek üzerinden durumu açıklayalım.

Şimdi aşağıdaki tabloda Highlight Cell Rules>Greater Than dedik ve değer olarak da E2 hücresini seçtik. Default olarak mutlak başvuru yazıldı. Buna göre seçilen alandaki tüm hücrelerin E1'in değerinden yani %81den büyük olmasına baktı. Mutlak başvuruda, CF uygulanan hücrelerin karşılaştırma hücresine göre konumu önemsizdir ve sabittir. Yani bu örnek için tüm hücreler için E1 hücresiyle karşılaştırma yapılır.

Mutlak başvuru yerine göreceli başvuru yaparsak durumun nasıl değiştiğini görelim. Bu sefer D3 hücresini E3 ile, D4'ü E4 v.s ile karşılaştırır.

Burda yapılacak bir hata da şu olabilir. İlk CF'ı yaptınız ve mutlak başvuru kullandığınızı farkettiniz, bunu düzeltmek yerine mevcudun üzerine ikinci bir CF uygulayıp orada göreceli yaparsanız etkisi olmaz, çünkü ilk CF ikincisini ezmiş olur. Zaten Rule Managera girince 2 tane CF olduğunu da görebilirsiniz.

Burada ve burada, birden fazla CF'ın öncelik işleyişi hakkında detaylı bilgi bulunmaktadır.

Dikkat:Göreceli başvuruları, Icon setleri ve Color Scale formatingle kullanamazsınız. Bunlarda nasıl biz çözüm uygulanacağını bir sonraki örnekte bulabilirsiniz.

Icon setlerde göreceli başvuru kullanma(VBA içerir)

Aşağıdaki gibi bir tablomuz olsun. Bu, bir bankada çeşitli kalemlerde X bölge müdürlüğü ile bankanın toplam performansını karşılaştıran bir tablodur.

Bu tabloda Bölge Büyüme kolonu üzerinde, Bankadan büyükse yeşil bir tick işareti olsun, sarı ve kırmızı ikon olmasın istiyoruz diyelim. Çünkü yöneticimiz "çok renkli olunca kafam karışıyor, sadece iyileri görmek yeterli" demiş olsun. Bunun için Conditional Formatting>Icon Sets>Indicators'ten ilk seçenek tıklandığında karşımıza aşağıdaki ekran gelir.

Bu ekranda aşağıdaki gibi sadece ilk kutu için ilgili hücreyi gireriz ve Type kutusuna da Number gireriz. Diğer iki kutuyu "No Cell Icon" yaparız.

OK dedikten sonra da "Applies to" kutusunu da hangi hücrelere uygulayacaksak onları seçeriz.

Ancak iki üstteki resimde farkettiyseniz yeşil tick işareti koyduğumuz alan için Value kutusuna $I$6 şeklinde mutlak başvuru girişi yaptık, zira göreceli başvuryu(I6) Icon Setlerde girmeye izin vermiyor. Bu nedenle, Conditional kutusunu kapattıktan sonra ilgili hücrelere tek tek girip bu Value alanını değiştirmemiz lazım. Ör:H7 hücresine gidip bunun için Value alanını $I$7 yapmak gibi. Ancak değiştireceğiniz hücre sayısı çoksa ve bunları tek tek değiştirmek istemiyorsanız, aşağıdaki VBA kodu ile de bunu başarabilirsiniz(Makro bilmenin avantajları...)

Sub conditional_toplu()
'bu makroyu recorder ile kaydettim, sadece döngüyü ve Value kısmını elle değiştirdim
For Each c In Selection
    c.Select
    c.FormatConditions.Delete 'mevcuttaki conditionı silelim

    c.FormatConditions.AddIconSetCondition
    c.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1)
        .ReverseOrder = False
        .ShowIconOnly = False
        .IconSet = ActiveWorkbook.IconSets(xl3TrafficLights1)
    End With
    c.FormatConditions(1).IconCriteria(1).Icon = xlIconGreenCheckSymbol
    With c.FormatConditions(1).IconCriteria(2)
        .Type = xlConditionValueFormula
        .Value = "=" & c.Offset(0, -2).Address 'bu kısmı kendim değiştirdim
        .Operator = 7
        .Icon = xlIconNoCellIcon
    End With
    With c.FormatConditions(1).IconCriteria(3)
        .Type = xlConditionValueNumber
        .Value = 1000000000000#
        .Operator = 7
        .Icon = xlIconNoCellIcon
    End With
Next c

End Sub

Sonuç aşağıdaki gibi olacaktır.

İki kritere göre iki farklı format uygulamak

İkinci örneğimiz ilk örneğin hemen hemen aynısı, ancak bu sefer bir de pazar büyümesi ile karşılaştırma kolonu var. Bundan sonraki kısım teknik bilgiden ziyade, çözüm bulma beceresi ve biraz pratiklikle alakalı. Giriş sayfamda belirttiğim gibi bu sitede bu tür çözüm önerilerini de buluyor olacaksınız. Şimdi diyelim ki yöneticiniz, bölgeyi banka ve pazarla karşılaştırmanızı istemiş olsun. Bir hücrede aynı anda hem bölgeye hem pazara göre aynı türde conditional formatting uygulayamıyoruz. Yani aynı anda hem bankaya hem pazara göre icon set formatı uygulayamayız. Bu durumda önünüzde iki seçenek(benim aklıma gelen) var,

1. seçenek: Bölge kolonunda, bankaya göre karşılaştırma için icon set uygularken, pazara göre karşılaştırma için farklı bir formating uygulanabilir(arkaplan rengini değiştirmek gibi)

2.seçenek: Conditional formattingi bölge kolonuna değil, banka ve pazar kolonlarına uygulamak. Bölge, bankadan iyiyise banka kolonuna yeşil tick, bölge pazardan iyiyse pazar kolonuna yeşil tick konur.

Ben örnek olsun diye ikisini birden uyguladım, tercih size kalmış. Tabiki ikisini aynı anda kullanmak anlamsız olur, ya birini ya diğerini seçmeniz gerekecektir.

Formüllü CF Örnekleri

CF'i, girdiğimiz bir formülün doğru olması durumunda da uygulayabiliriz. Yani girdiğimiz formül TRUE/FALSE döndürmelidir. Mesela aşağıdaki formül ile Sayı olan tüm hücreler formatlanacaktır.

Aşağıda diğer formüllü örnekleri bulabilirsiniz. Ancak yukarda belirttiğimiz gibi mutlak ve göreceli başvuru tiplerinin ne olduklarını iyice içselleştirdikten sonra devam etmenizi öneririm. Zira bu örneklerin hepsinde mutlak ve göreceli başvuruların farklı kombinasyonları kullanılacak olup formüller biraz karmaşıklaşacaktır.

Mükerrer kayıtları bulma

Standart CF seçenekleri arasında "Duplicate Values" olduğunu biliyoruz. Bununla mükerrer kayıtları(tüm satırı aynı) değil, sadece seçilen kolondaki mükerrer datayı bulmuş oluyoruz. Halbuki veritabanı dilinde Kayıt demek, tüm bir satıra ait data demek. Örneğin aşağıdaki kayıtlar mükerrer iken,

Şu kayıtlar mükerrer değildir. (Sadece Müşteri No datası mükerrerdir.)

Peki mükerrer kayıtları tüm satır şeklinde nasıl buluruz. Tabiki bir formülle. Hemen bakalım.

Countifs'in 1. ve 3. parametresini mutlak başvurulu yaptım, sürekli aynı yerde  baksın diye. 2.ve 4.parametresini ise yarı mutlak yarı göreceli yaptım, kayarak ilerlesin diye, ama sadece satırda kaysın, sürunda değil. Böylece örneğin 5.satırı kontrol ederken A2:A17 arasında 14023ten bi tane daha varmı diye bakacak ve aynı anda B2:B17 arasında 14023ün Kredi Kartı bi tane daha varmı diye bakmış olacak.

Tüm satır renklendirmesi istediğim için tüm alanı seçiyorum.

Gördüğünüz gibi en alttaki 18952 nolu müşteri de mükerrer olmasına rağmen iki farklı ürün için datası bulunduğu için kayıt anlamında mükerrer değildir. Sadece 15375 nolu müşteri mükerrer çımıştır.

NOT:C kolonundaki alan hiç değişmediği için bunu formüle dahil etmedim.

Mükerrer kayıtlardan sadece ilkini formatlama

Eğer mükerrer kayıtların tamamıyla değil de sadece ilkiyle ilgileniyorsak, tarama sırasında kontrol bölgesinin de kayarak ilerlemesini sağlamalıyız. Mesela aşağıdaki görüntüde 10.satırın tarama bölgesi A10:A25 olur. Neden? Çünkü A2:A17 olarak başladık, ama satırı göreceli verdik. Dolayısıyla aşağı doğru indikçe satırlar da 1er 1er kayar. Yani ilk kayıt olan 11670 için A2:A17'ye bakarken ikincisi için A3:A18'e bakar ve böylece gider. Dolayısıyla mükerrer kaydı bulduktan sonra bi aşağıya kaydığı için o kayıttan bidaha bulamamış olur. Bu örnekte 11.satırdaki 15375 için tarama bölgesi A11:A26 olduğu için onun aynısına rastlayamamıştır ve işaretlememiştir.

Mükerrer kayıtlardan ilki dışındakileri formatlama

Eğer mükerrer kayıtlardan, ilki dışındakilerle ilgilenmiyorsak bundaki tarama mantığı "İlk başı sabitle, sonra hücrenin kendisyle birlikte aşağı doğru kay" şeklinde olmalı. Yani ilk kayıt olan 11670'i A2:A2de arar, ikinci kayıt olan 11693ü A2:A3te, böyle ilerlerken 10.kayda geldiğinde 15375i A2:A10'da aradı ve 1 tane buldu, dolayısıyla işaretlemedi, 11.kayda geldiğinde 15375i A2:A11de aradı ve 2 tane bulduğu için bunu işaretledi. Aşağılarda 3. bi eşleşme olsaydı onu da işaretlerdi.

Belli bir kategorideki rakamların toplamı negatif/poziti mi kontrolü

Şimdi diyelim ki şöyle bir listemiz var.

Bu listede İndirim+İlave toplamı negatif mi diye kontrol edelim, toplamı negatif olan kayıtları işaretleyelim. Tabi bunun yapmanın bir yolu da PivotTable yapıp, küçükten büyüğe sıralayıp en üstte negatif var mı diye bakmak olabilir, veya başka yöntemler de kullanılabilir. Her zaman dediğimiz gibi, o an ihtiyacınızı hangi yöntem çözüyorsa onu kullanın. Biz şimdi CF yöntemini kullanacağız.

Bunun için formüle dayalı CF uygular ve şu formülü yazarız:

ve A2:C17 alanına uygularız:

Sonuç:

Bölge ortalamasının altında kalan şubeleri formatlama

Şimdi diyelim ki şöyle bir listemiz var. Burada bölgenin ortalama HG% oranından düşük HG%'li şubeleri renklendirmek istiyoruz ama şubenin HG%si %100'ün üzerinde kalıyorsa renklenmesin. Mesela Bölge1'in HG% ortalaması %104 olup Şube2'nin renklenmemesi gerekiyor.

Formülümüzü aşağıdaki gibi yazıp ilerleyelim.

 

Uygulanacak alanı da seçelim.

 

Sonuç aşağıdaki gibi olacaktır.

TEST SORULARI

Son Sorumuz şuymuş:Bir metindeki tüm noktaları yoketmek istiyorsunuz. Hangi fonksiyonu kullanırdınız?
Soru:

A şıkkı:

B şıkkı:

C şıkkı:

D şıkkı:

Doğru Cevap Etiketler

İlişkili konuyu seç

16935

Label
* Sorulara verilen yanlış cevaplardaki esprili yorumlarım için hoşgörünüze sığınıyorum.
* Test ve Ödevlerdeki bazı detaylar burada anlatılmamış olabilir. Bunları kendiniz araştırıp bulmalısınız.
* Birden çok konuya ait içeriği olan ödevler var. Algoritmik açıdan bakıldığında o an en uygun konuya adreslenmiştir.
Dikkat! Bir soruya cevap verdikten sonra geri dönemezsiniz.
2
0
0
0

Soru No:106. Aşağıdakilerden yöntemlerden hangisi duplike kayıtları bulmak için uygulanmaz





ÖDEVLER

2
0
Ödev No:69. Bir kolonun başlığını, alttaki hücrelerde formül varsa renklendiren bir conditional formatting uygulayın. Ör: A2:A1000 hücrelerinde en az 1 formüllü hücre varsa A1 hücresi renklensin.
Çözüme bakın(Başka türlü de çözülebilir tabi, bu benim çözümüm.)

=SUM(--ISFORMULA(A2:A1000))>0



=YORUMLAR ve SORULAR=


DEVİR UYARISI

Herkese merhaba. Hosting maliyetlerinin aşırı artması yüzünden sitemi yakın zamanda(en geç Mayıs 2023) kapatmaya karar vermiştim. Ancak, siteyi yakından takip eden bir arkadaş siteyi devralmak istemiştir. Siteyi, Mayıs ayında kendisine devir etmeye karar verdim. Üyelik bilgilerini bana güvenerek girdiğiniz için, hepsini silmiş bulunuyorum, yani mail adreslerinizi kimseyle paylaşmamış olacağım. Bilginizi rica ederim.