Hücre Biçimlendirme

iplikci_80

Altın Üye
Katılım
29 Kasım 2007
Mesajlar
1,110
Excel Vers. ve Dili
excel 2007
Altın Üyelik Bitiş Tarihi
07-03-2026
0" Gün " Şeklinde İsteğe Bağlı olarak Hücre Biçimlendirme yaptığım da ne 14 Gün gibi rakamları ayrı, yazıları ayrı renk yapabilme hususunda yardımlarınızı rica ediyorum
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,190
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Aynı hücrede ayrı renk gösterimi için makro kullanmanız daha uygun olacaktır.

Aşağıdaki kodu sayfanızın kod bölümüne uygulayıp deneyiniz.

Kod A1:A10 hücre aralığında çalışacaktır. Kendinize göre düzenlersiniz.

Kod:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim X As Integer
    If Intersect(Target, Range("A1:A10")) Is Nothing Then Exit Sub
    If Target.Cells.CountLarge > 1 Then Exit Sub
    If IsNumeric(Target.Value) Then
        X = Len(Target)
        Target = Target & " Gün"
        With Target
            .Characters(Start:=1, Length:=X).Font.ColorIndex = 3
            .Characters(Start:=X + 2, Length:=3).Font.ColorIndex = 5
        End With
    End If
End Sub
 

Muratizmir

Altın Üye
Katılım
16 Ekim 2005
Mesajlar
91
Excel Vers. ve Dili
İşletim Sistemi Windows 7
Excel 2010-Türkçe
Altın Üyelik Bitiş Tarihi
24-11-2024
Benzer konu gibi düşünerek bir sorum olacaktı benimde.
A sütununda ( A sütunundaki tüm hücreler) herhangibir hücre renkli ise B sütununa 1 veya bizim istediğimiz herhangi bir (örneğin dikkat, renkli vs gibi) terimi yazdırabilirmiyiz?
Renksiz olanlar haliyle boş kalacaktır.
Teşekkürler.
 

iplikci_80

Altın Üye
Katılım
29 Kasım 2007
Mesajlar
1,110
Excel Vers. ve Dili
excel 2007
Altın Üyelik Bitiş Tarihi
07-03-2026
Arkadaşlar ilginize teşekkür ederim.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,190
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
@Muratizmir;

Hücredeki renkler menüden dolgu rengi verilerek mi yapıldı? Yoksa koşullu biçimlendirme ile mi yapıldı?

Benzer konu gibi düşünerek bir sorum olacaktı benimde.
A sütununda ( A sütunundaki tüm hücreler) herhangibir hücre renkli ise B sütununa 1 veya bizim istediğimiz herhangi bir (örneğin dikkat, renkli vs gibi) terimi yazdırabilirmiyiz?
Renksiz olanlar haliyle boş kalacaktır.
Teşekkürler.
 

Muratizmir

Altın Üye
Katılım
16 Ekim 2005
Mesajlar
91
Excel Vers. ve Dili
İşletim Sistemi Windows 7
Excel 2010-Türkçe
Altın Üyelik Bitiş Tarihi
24-11-2024
Koşullu biçimlendirme ile
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,190
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Kullandığınız koşul nedir?
 

Muratizmir

Altın Üye
Katılım
16 Ekim 2005
Mesajlar
91
Excel Vers. ve Dili
İşletim Sistemi Windows 7
Excel 2010-Türkçe
Altın Üyelik Bitiş Tarihi
24-11-2024
Yinelenen -Koyu Kırmızı Metinle Açık Kırmızı doldu

Aslında benim esas problemin sütunda çok veri olduğundan sıralama yaptığımda tablonun kilitlenmesi yanıt vermemesi.
Benzer olanları yukarıda olarak sıralamak istiyorum. Bu şekilde bir koşullu biçimlendirme yaptıktan sonra sırala hücre rengine diye seçerek en başa getirmek istiyorum. Ancak koşullu biçimlendirme olduğundan sayfa çok ağırlaşıyor. Bende düşündümki yan hücresine bir değer koyabilirsem yandaki hücreyi sıralarım ve istediğimi elde ederim, başka bir şekilde.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,190
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Zaten kilitlenen excel dosyasına ek işlemler yapmak sistemi daha da kasabilir.

Bu sebeple makro ile yinelenenleri renklendirip sıralayabilirsiniz.

Kod:
Option Explicit

Sub Renklendir()
    Dim Son As Long, X As Long, Liste As Variant, Dizi As Object
    Dim Alan As Range, Say As Long, Zaman As Double
    
    Zaman = Timer
    
    Set Dizi = CreateObject("Scripting.Dictionary")
    Son = Cells(Rows.Count, 1).End(3).Row
    Liste = Range("A2:A" & Son).Value
    
    Range("A2:A" & Rows.Count).Interior.ColorIndex = xlNone
    
    For X = 1 To UBound(Liste)
        If Not Dizi.Exists(Liste(X, 1)) Then
            Say = Say + 1
            Dizi(Liste(X, 1)) = Say
        Else
            If Alan Is Nothing Then
                Set Alan = Cells(X + 1, 1)
            Else
                Set Alan = Union(Alan, Cells(X + 1, 1))
            End If
        End If
    Next
    
    If Not Alan Is Nothing Then Alan.Interior.ColorIndex = 3
    
    MsgBox "İşleminiz tamamlanmıştır." & Chr(10) & Chr(10) & _
           "İşlem süresi ; " & Format(Timer - Zaman, "0.00") & " Saniye", vbInformation
End Sub
 

Muratizmir

Altın Üye
Katılım
16 Ekim 2005
Mesajlar
91
Excel Vers. ve Dili
İşletim Sistemi Windows 7
Excel 2010-Türkçe
Altın Üyelik Bitiş Tarihi
24-11-2024
Teşekkür ederim. Ben bu kodu koşullu biçimlendirmeden evvelmi çalıştırıcam? Yoksa biçimlendirmem bittikten ve hücreler kırmızı olduktan sonramı?
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,190
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Koşullu biçimlendirmeyi kullanmayın. Var olanı da performans açısından silin. Önerdiğim kod yinelenenleri kırmızı dolgu ile renklendirecektir.

Siz sonrasında dilediğiniz işlemi rahatlıkla yapabilirsiniz.
 

Muratizmir

Altın Üye
Katılım
16 Ekim 2005
Mesajlar
91
Excel Vers. ve Dili
İşletim Sistemi Windows 7
Excel 2010-Türkçe
Altın Üyelik Bitiş Tarihi
24-11-2024
Evet yaptım oldu. Ancak şu şekilde gerçekleşti.
İlk olanı renklendirmedi ondan sonrakileri kırmızı yaptı.
A1- ALİ
A2-ALİ
A3- ALİ
şeklinde iken
A2 ve A3 kırmızı oldu A1 renksiz kaldı
Aynı şekilde devam eden hücrelerde de benzer davranışı gösterdi.
Bu şekilde iken Tüm ALİ gibi (benzelerin tamamının) verilerin kırmızı olmasını sağlayabilirmiyim?
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,190
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Kod A2 hücresinden kontrole başlıyor. Kod içinde A2 yazan yerleri A1 yaparsanız sonuca ulaşabilirsiniz.
 

Muratizmir

Altın Üye
Katılım
16 Ekim 2005
Mesajlar
91
Excel Vers. ve Dili
İşletim Sistemi Windows 7
Excel 2010-Türkçe
Altın Üyelik Bitiş Tarihi
24-11-2024
Sanırım bir şeyleri hatalı yapıyorum.
Bu alttaki resim sizinde dediğiniz gibi Koddaki 2 tane A2 yi A1 yaptığımda elde ettiğim sonuç HAKAN neden kırmızı oldu anlamadım :) bir hata yaptım belliki.



Bu alltakide orjinal kod sizin yazdığınız. A2 iken sonuç harika elbette ancak ilk olanları kırımızı olmuyor bir türlü.
Alttaki resimde A2-A5-A6-A11 de olduğu gibi.

 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,190
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Siz aşağıdaki kodu deneyiniz.

Kod:
Option Explicit

Sub Renklendir()
    Dim Liste As Variant, Son As Long, X As Long, Alan As Range
    
    If WorksheetFunction.CountA(Range("A:A")) = 0 Then
        MsgBox "Kontrol edilecek veri bulunamadı!", vbCritical
        Exit Sub
    End If
    
    Son = Cells(Rows.Count, 1).End(3).Row
    Liste = Range("A1:A" & Son).Value
    
    For X = 1 To UBound(Liste)
        If WorksheetFunction.CountIf(Range("A:A"), Liste(X, 1)) > 1 Then
            If Alan Is Nothing Then
                Set Alan = Cells(X, 1)
            Else
                Set Alan = Union(Alan, Cells(X, 1))
            End If
        End If
    Next
    
    If Not Alan Is Nothing Then
        Alan.Interior.ColorIndex = 3
        MsgBox "Yinelenen kayıtlar renklendirilmiştir.", vbInformation
    Else
        MsgBox "Yinelenen kayıt bulunamadı!", vbCritical
    End If
End Sub
 
Üst