Soru BELLİ ŞARTLARA GÖRE RENKLENDİRME

dengeceteris

Altın Üye
Katılım
21 Aralık 2019
Mesajlar
202
Excel Vers. ve Dili
Office 2016
Altın Üyelik Bitiş Tarihi
15-06-2025
Sevgili Üstadlar;

Ekte bulunan dosyam mali müşavirler için hızlı gözden geçirme için gerekli olabilir en azından benim çok işime yarayacaktır. 5 tane kriter oluşturdum aslında daha fazla ama ben diğer oluşturacağım kriterleri üretebilirim diye düşünüyorum. 8 sütundan oluşan ve ilk A ve B bazen diğer sütunları baz alarak bir renklendirme yapmaya çalışıyorum. Dosya içinde daha kolay anlaşılabilir diye diye düşünüyorum. Yardımcı olabilecek arkadaşlara şimdiden minnettar olurum.

1- İlk 3 karakter 100 'e eşit veya büyük 299'a eşit yada küçükse ve F sütununda ki rakam E sütunundan büyükse bir renge boyasın.

2- İlk 3 karakter 100 'e eşit veya büyük 299'a eşit yada küçükse ama aynı zamanda B sütununda (-) karakteri varsa ve E sütunu F sütunundan büyükse farklı bir renge boyasın

3- İlk 3 karakter 300 'e eşit veya büyük 599'a eşit yada küçükse ve E sütununda ki rakam F sütunundan büyükse bir renge boyasın.

4- İlk 3 karakter 300 'e eşit veya büyük 599'a eşit yada küçükse ama aynı zamanda B sütununda (-) karakteri varsa ve F sütunu E sütunundan büyükse farklı bir renge boyasın

5-İlk 3 Karakterde 128'e eşit olan satırın E sütunu, 129 'a eşit olan satırın F sütunundan küçükse kırmızı

 

Ekli dosyalar

dengeceteris

Altın Üye
Katılım
21 Aralık 2019
Mesajlar
202
Excel Vers. ve Dili
Office 2016
Altın Üyelik Bitiş Tarihi
15-06-2025
Yardımcı olabilecek bir arkadaş var mı acaba ?
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Merhaba,

Aşağıdaki formülleri koşullu biçimlendirmede dilediğiniz rengi vererek uygulayınız.

1) =VE(--SOLDAN($A2;3)>99;--SOLDAN($A2;3)<300;$F2>$E2)
2) =VE(--SOLDAN($A2;3)>99;--SOLDAN($A2;3)<300;ESAYIYSA(BUL("-";$B5));$E2>$F2)
3) =VE(--SOLDAN($A2;3)>299;--SOLDAN($A2;3)<600;$E2>$F2)
4) =VE(--SOLDAN($A2;3)>299;--SOLDAN($A2;3)<600;ESAYIYSA(BUL("-";$B5));$F2>$E2)
5) =VE(--SOLDAN($A2;3)=128;E2<DÜŞEYARA(129;$A:$F;5;0))

.
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,653
Excel Vers. ve Dili
Pro Plus 2021
Kod:
Sub test()
    son = Cells(Rows.Count, 1).End(3).Row
    Range("E2:F" & son).Interior.Color = xlNone
    For i = 2 To son
        al = Left(Cells(i, 1).Value, 3)
        If Len(al) = 3 And IsNumeric(al) Then
            If al = 128 Then borc128 = Cells(i, "E").Value: sat128 = i
            If al = 129 Then alacak129 = Cells(i, "F").Value: sat129 = i
            Select Case al
                Case 100 To 299
                    If Cells(i, "F").Value > Cells(i, "E").Value Then
                        Cells(i, "F").Interior.ColorIndex = 3
                    End If
                    If Cells(i, "E").Value < 0 Then
                        Cells(i, "E").Interior.ColorIndex = 4
                    End If
                Case 300 To 599
                    If Cells(i, "E").Value > Cells(i, "F").Value Then
                        Cells(i, "E").Interior.ColorIndex = 5
                    End If
                    If Cells(i, "F").Value < 0 Then
                        Cells(i, "F").Interior.ColorIndex = 6
                    End If
            End Select

        End If
    Next i
    If sat128 > 0 And borc128 > 0 And borc128 > alacak129 Then
        Cells(sat128, "E").Interior.ColorIndex = 28
        Cells(sat129, "F").Interior.ColorIndex = 28
    End If
End Sub
 

dengeceteris

Altın Üye
Katılım
21 Aralık 2019
Mesajlar
202
Excel Vers. ve Dili
Office 2016
Altın Üyelik Bitiş Tarihi
15-06-2025
Merhabalar;
Sayın Ömer bey ve veyselemre bey cevap verme zahmetine girdiğiniz için çok tşk ederim. Makro olması daha da işimi görür bunu geliştirebileceğimi düşünüyorum. Ancak sevgili veyselemre bir şey daha rica etmek istiyorum. Yazdığım kriterlerde 2. ve 4. maddeler eksik kalmış onları tamamlamamız mümkün mü ?

Şöyle izah edeyim: kodların 100 den büyük ve 300 den küçük olması halinde F sütunu E sütunundan büyükse renklendir (burası tamam) ama yine bu aralıkta bulunupta B sütununda (-) parantez işareti olanlarda ilk kriteri bu satırlar için tersini yap yani E sütunu F sütunundan büyükse renklendir.

Yine kodların 300 ile 600 arasında olanlarında E sütunu F sütunundan büyükse renklendir (burası tamam) ama B sütununda (-) parantez karakteri varsa ve F >E ise 3. maddeyi geri al ve tersini yap.

Kolaylık olması açısından şunu yazabilirim. Kod aralığı 100-299 ise E>F olmak zorunda Ama aynı Kod aralığında B sütununda (-) karakteri varsa F>E olmak zorunda. 300-599 aralığında ise bu kriterlerin tam tersi. Bu şartlara uymayanlar renkli olacak.

Birde 128 ve 129'u tekrar izah edeyim. Çünkü eksik izah etmişim. Burada 128 kodunun E-F sonucu < 129'un F-E sonucu ise her ikisini de renklendir.
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,653
Excel Vers. ve Dili
Pro Plus 2021
Kod:
Sub test()
    son = Cells(Rows.Count, 1).End(3).Row
    Range("E2:F" & son).Interior.Color = xlNone
    For i = 2 To son
        al = Left(Cells(i, 1).Value, 3)
        If Len(al) = 3 And IsNumeric(al) Then
            If al = 128 Then fark128 = Cells(i, "E").Value - Cells(i, "F").Value: sat128 = i
            If al = 129 Then fark129 = Cells(i, "F").Value - Cells(i, "E").Value: sat129 = i
            Select Case al
                Case 100 To 299
                    If InStr(Cells(i, 2).Value, "(-)") Then
                        If Cells(i, "F").Value < Cells(i, "E").Value Then
                            Cells(i, "E").Interior.ColorIndex = 3
                        End If
                    Else
                        If Cells(i, "F").Value > Cells(i, "E").Value Then
                            Cells(i, "F").Interior.ColorIndex = 4
                        End If

                    End If
                Case 300 To 599
                    If InStr(Cells(i, 2).Value, "(-)") Then
                        If Cells(i, "F").Value > Cells(i, "E").Value Then
                            Cells(i, "E").Interior.ColorIndex = 5
                        End If
                    Else
                        If Cells(i, "F").Value < Cells(i, "E").Value Then
                            Cells(i, "F").Interior.ColorIndex = 6
                        End If

                    End If
            End Select

        End If
    Next i
    If fark128 < fark129 Then
        Cells(sat128, "E").Interior.ColorIndex = 28
        Cells(sat129, "F").Interior.ColorIndex = 28
    End If
End Sub
 

dengeceteris

Altın Üye
Katılım
21 Aralık 2019
Mesajlar
202
Excel Vers. ve Dili
Office 2016
Altın Üyelik Bitiş Tarihi
15-06-2025
Sayın Veysel Emre çok tşk ederim...
 
Üst