• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Koşullu biçimlendirme (formüllü)

Katılım
18 Ağustos 2010
Mesajlar
38
Excel Vers. ve Dili
yok
Arkadaşlar c sütununda yer alan metinler, O sütunuyla aynı ise, O sütunuyla aynı olan renkte olsun istiyorum ama yapamıyorum.



Dosya
 
Son düzenleme:
Merhaba,

Aşağıdaki kodları ilgili sayfanı kod bölümüne kopyalayıp deneyiniz.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

    Dim c As Range
    
    If Intersect(Target, [C:C]) Is Nothing Or Target.Row < 16 Then Exit Sub
    
    Set c = Range("O:O").Find(Target.Value, LookIn:=xlValues)
    If Not c Is Nothing Then
        With Target
            .Font.Color = c.Font.Color
            .Font.Bold = c.Font.Bold
        End With
    Else
        Target.Font.Color = xlAutomatic
    End If

End Sub
 
Merhaba,

Aşağıdaki kodları ilgili sayfanı kod bölümüne kopyalayıp deneyiniz.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

    Dim c As Range
    
    If Intersect(Target, [C:C]) Is Nothing Or Target.Row < 16 Then Exit Sub
    
    Set c = Range("O:O").Find(Target.Value, LookIn:=xlValues)
    If Not c Is Nothing Then
        With Target
            .Font.Color = c.Font.Color
            .Font.Bold = c.Font.Bold
        End With
    Else
        Target.Font.Color = xlAutomatic
    End If

End Sub

Teşekkürler Hocam güzel oldu ama üzerine gelip enter tuşuna basınca renk veriyo tek tek, o yüzden tek tek tıklamak gerekiyor renklenmesi için. Onu nasıl düzeltirim
 
Merhaba,

Sizin istediğiniz klasik koşullu biçim ile uyumlu değil. O yüzden makro ile yaptım.
Ya da varsa bir yolu ben bilmiyorum.
 
Uzun zaman oldu foruma girmedim. Bazı şeyler değişmiş. Dosyanızı istediğiniz gibi hazırladım ama siteye yükleyemedim.
Mesajla mail adresinizi yazın, size göndereyim. Ya da başka bir yol varsa siz önerin.
Selamlar,
 
Merhaba.
Aşağıdaki KOD'u sayfanın (Modüle değil) kod bölümüne uygulayın.
(alt tarafta sayfa adına fareyle sağ tıklayıp KOD GÖRÜNTÜLEyi seçin,
açılan ekranın sağ tarafındaki boş alana KOD'u yapıştırın
)
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [C16:C221]) Is Nothing Then Exit Sub
    If WorksheetFunction.CountIf(Range("O17:O19"), Target) = 0 Then Exit Sub
        Target.Font.Color = Cells(WorksheetFunction.Match(Target, Range("O17:O19"), 0) + 16, 15).Font.Color
End Sub
C sütunundaki veri doğrulama seçeneklerinden seçim değiştirerek test ediniz.
 
Merhaba.
Aşağıdaki KOD'u sayfanın (Modüle değil) kod bölümüne uygulayın.
(alt tarafta sayfa adına fareyle sağ tıklayıp KOD GÖRÜNTÜLEyi seçin,
açılan ekranın sağ tarafındaki boş alana KOD'u yapıştırın
)
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [C16:C221]) Is Nothing Then Exit Sub
    If WorksheetFunction.CountIf(Range("O17:O19"), Target) = 0 Then Exit Sub
        Target.Font.Color = Cells(WorksheetFunction.Match(Target, Range("O17:O19"), 0) + 16, 15).Font.Color
End Sub
C sütunundaki veri doğrulama seçeneklerinden seçim değiştirerek test ediniz.

Teşekkürler hocam oldu fakat, mesela o Sütunundaki rengi kırmızı yerine mavi yaptığımda kırmızı seçilenler değişmiyor. Aktif olarak değişmesini nasıl sağlarım?
 
Merhaba,

Tag'daki kodu kullanabilirsiniz. Anlık değişimlerle değilde siz istediğinizde çalışacak bir kod daha iyi olur diye düşünüyorum.

Kod:
Sub renklen()



son = Cells(Rows.Count, "e").End(3).Row

For i = 18 To son

If Cells(i, "c") = Cells(i, "o") Then

a = Cells(i, "o").Font.ColorIndex

Cells(i, "c").Font.ColorIndex = a

End If

Next

End Sub
 
Merhaba,

Tag'daki kodu kullanabilirsiniz. Anlık değişimlerle değilde siz istediğinizde çalışacak bir kod daha iyi olur diye düşünüyorum.

Kod:
Sub renklen()



son = Cells(Rows.Count, "e").End(3).Row

For i = 18 To son

If Cells(i, "c") = Cells(i, "o") Then

a = Cells(i, "o").Font.ColorIndex

Cells(i, "c").Font.ColorIndex = a

End If

Next

End Sub

Hocam o sütunundaki rengi değiştirdiğimde c sütunundaki seçtiklerim eski renginde kalıyor. Onu nasıl düzeltirim, o sütununu değiştirdimde c sütunundaki değerlerde hemen değişsin istiyorum ama olmuyor :)
 
Merhaba, gönderdiğim kod'u aşağıdaki ile değiştirin.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [C16:C221]) Is Nothing Then Exit Sub
        For a = 16 To 221
            If WorksheetFunction.CountIf(Range("O17:O19"), Cells(a, 3)) = 0 Then GoTo 10
                Cells(a, 3).Font.Color = Cells(WorksheetFunction.Match(Cells(a, 3), Range("O17:O19"), 0) + 16, 15).Font.Color
10:            Next
End Sub
 
Hocam o sütunundaki rengi değiştirdiğimde c sütunundaki seçtiklerim eski renginde kalıyor. Onu nasıl düzeltirim, o sütununu değiştirdimde c sütunundaki değerlerde hemen değişsin istiyorum ama olmuyor :)

Kodun anlık çalışmadığını belirtmiştim. Tekrar çalıştırdığınızda düzelir.
 
Birde renk kodlarını değiştirmek hiçbir sayfa olayını tetiklemez, istediğinizi anlık olarak yapamazsınız.
 
Merhaba, gönderdiğim kod'u aşağıdaki ile değiştirin.
Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [C16:C221]) Is Nothing Then Exit Sub
        For a = 16 To 221
            If WorksheetFunction.CountIf(Range("O17:O19"), Cells(a, 3)) = 0 Then GoTo 10
                Cells(a, 3).Font.Color = Cells(WorksheetFunction.Match(Cells(a, 3), Range("O17:O19"), 0) + 16, 15).Font.Color
10:            Next
End Sub

Teşekkürler hocam başta sana sonra diğer arkadaşlara :)
Süper bir tablo oldu emeğinize sağlık
 
Teşekkürler hocam başta sana sonra diğer arkadaşlara :)
Süper bir tablo oldu emeğinize sağlık

Ömer bey'in verdiği kod'la sizin istediğinizin olması imkansız.
Siz renk değiştiğinde diğer hücrede renklendirmeyi otomatik yapsın istiyorsunuz ama excel'de böyle bir özellik yok.

İşiniz görülmüşse ne güzel.
 
Geri
Üst