Koşullu biçimlendirme tüm satırı otomatik boyama

Katılım
29 Kasım 2024
Mesajlar
9
Excel Vers. ve Dili
Excel 2016
Merhabalar,

26 Sütun, yaklaşık 100-150 satırlık excel tabloları oluşturuyorum. Ve orada işlem durumuna göre satırları boyuyorum. Ama artık pratik olması amacıyla bunun pratik hale gelmesini istiyorum.

Örneğin; Son durum sütununda Evraklar Bekleniyor yazılınca yazılan satırın hepsini sarı renkte olmasını istiyorum, Başvuru yapılacak yazdığımda mavi renkte olmasını istiyorum gibi gibi.

bunu tek satırda yapabildim ama ben bütün satırın otomatik boyanmasını istiyorum. irnette gördüğüm bir kaç formül denedim ama onlarda da başarılı olamadım.

yardımlarınızı rica ederim.
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
638
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
Tablonuzdaki verilerin bulunduğu aralığı seçin. Örneğin, A2:Z100 arasındaki hücreleri seçebilirsiniz. (Bu, tablonuzdaki verilerin bulunduğu hücre aralığına göre değişebilir).

Giriş sekmesi Koşullu biçimlendirme yi seçiniz.
1)Biçimlendirme uygulayaçağınız alanı seçiniz
2)Yeni kural
3)Biçimlendirileçek hücreleri belilemek için formül kullan seçiniz.
4)Formül alanına aşıdaki formülü kopyalayınız.
5)Dolgu rengi belirleyiniz
=$E2=Evraklar Bekleniyor"
=$E2="Başvuru yapılacak"
Diğerleri için tırnak arasındaki yazıyı ve dolgu rengini değiştirerek tekrar aynı uygulamayı yapınız.

Bu linklere bakınız


 

Ekli dosyalar

Son düzenleme:
Katılım
29 Kasım 2024
Mesajlar
9
Excel Vers. ve Dili
Excel 2016
merhabalar,

teşekkür ederim cevabınız için. kodu denedim ancak şöyle bir sorun mevcut. örneğin iptal yazılan yer değil üst satırı boyuyor. bunu nasıl düzeltebilirim?
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
638
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
İptal dosyasında böyle bir durum söz konusu değil iptal yazılan satırı komple renklendirme yapmaktadır.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then
Exit Sub
End If
If Intersect(Target, [a1:Q1000]) Is Nothing Then Exit Sub
a = Target.Row
say = WorksheetFunction.CountIf(Range("A" & a & ":" & "Q" & a), "İPTAL")
If say > 0 Then
Range("A" & a & ":" & "Q" & a).Interior.ColorIndex = 8
Else
Range("A" & a & ":" & "Q" & a).Interior.ColorIndex = xlNone
End If
End Sub

Bu kodu sayfanın kod bölümüne kopyalayıp yapıştırınız.Sonrasında
Bu makro A ve Q sutunların birisine iptal yazarsanız o satırı boyamaktadır.
 
Katılım
29 Kasım 2024
Mesajlar
9
Excel Vers. ve Dili
Excel 2016
İptal dosyasında böyle bir durum söz konusu değil iptal yazılan satırı komple renklendirme yapmaktadır.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then
Exit Sub
End If
If Intersect(Target, [a1:Q1000]) Is Nothing Then Exit Sub
a = Target.Row
say = WorksheetFunction.CountIf(Range("A" & a & ":" & "Q" & a), "İPTAL")
If say > 0 Then
Range("A" & a & ":" & "Q" & a).Interior.ColorIndex = 8
Else
Range("A" & a & ":" & "Q" & a).Interior.ColorIndex = xlNone
End If
End Sub

Bu kodu sayfanın kod bölümüne kopyalayıp yapıştırınız.Sonrasında
Bu makro A ve Q sutunların birisine iptal yazarsanız o satırı boyamaktadır.
ücretli üyelik istiyormuş onu indirmek için o yüzden göremedim onu maalesef.
bu kod çalışıyor evet. bu kodu nasıl çoklu kullanabilirim? sadece iptal değil 6-7 tane daha kelime yazmam lazım.
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
638
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, [A1:Q1000]) Is Nothing Then Exit Sub

Dim a As Long
Dim say As Long
Dim kelimeler As Variant
Dim i As Long
Dim found As Boolean

a = Target.Row

kelimeler = Array("İPTAL", "KAPALI", "HİZMET DIŞI", "BEKLEMEDE", "ONAY BEKLEYEN", "RET", "YENİ")

found = False
For i = LBound(kelimeler) To UBound(kelimeler)

say = WorksheetFunction.CountIf(Range("A" & a & ":Q" & a), kelimeler(i))
If say > 0 Then
found = True
Exit For
End If
Next i

If found Then
Range("A" & a & ":Q" & a).Interior.ColorIndex = 8
Else
Range("A" & a & ":Q" & a).Interior.ColorIndex = xlNone
End If
End Sub

kelimeler = Array("İPTAL", "KAPALI", "HİZMET DIŞI", "BEKLEMEDE", "ONAY BEKLEYEN", "RET", "YENİ") kısmında, kontrol edilmesini istediğiniz kelimeleri listeye ekledim. İstediğiniz kadar kelime ekleyebilirsiniz.
 
Katılım
29 Kasım 2024
Mesajlar
9
Excel Vers. ve Dili
Excel 2016
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, [A1:Q1000]) Is Nothing Then Exit Sub

Dim a As Long
Dim say As Long
Dim kelimeler As Variant
Dim i As Long
Dim found As Boolean

a = Target.Row

kelimeler = Array("İPTAL", "KAPALI", "HİZMET DIŞI", "BEKLEMEDE", "ONAY BEKLEYEN", "RET", "YENİ")

found = False
For i = LBound(kelimeler) To UBound(kelimeler)

say = WorksheetFunction.CountIf(Range("A" & a & ":Q" & a), kelimeler(i))
If say > 0 Then
found = True
Exit For
End If
Next i

If found Then
Range("A" & a & ":Q" & a).Interior.ColorIndex = 8
Else
Range("A" & a & ":Q" & a).Interior.ColorIndex = xlNone
End If
End Sub

kelimeler = Array("İPTAL", "KAPALI", "HİZMET DIŞI", "BEKLEMEDE", "ONAY BEKLEYEN", "RET", "YENİ") kısmında, kontrol edilmesini istediğiniz kelimeleri listeye ekledim. İstediğiniz kadar kelime ekleyebilirsiniz.
elinize sağlık sizi baya uğraştırdım. bu kelimelere farklı farklı renk atamasını nasıl yapabiliriz? her birine farklı renk atamam gerekiyor
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
638
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, [A1:Q1000]) Is Nothing Then Exit Sub

Dim a As Long
Dim say As Long
Dim kelimeler As Variant
Dim renkler As Variant
Dim i As Long
Dim j As Long
Dim found As Boolean

a = Target.Row

kelimeler = Array("İPTAL", "KAPALI", "HİZMET DIŞI", "BEKLEMEDE", "ONAY BEKLEYEN", "RET", "YENİ")
renkler = Array(3, 4, 5, 6, 7, 8, 9)

Range("A" & a & ":Q" & a).Interior.ColorIndex = xlNone


For j = 1 To 17
found = False
For i = LBound(kelimeler) To UBound(kelimeler)
If InStr(1, Cells(a, j).Value, kelimeler(i), vbTextCompare) > 0 Then
Cells(a, j).Interior.ColorIndex = renkler(i)
found = True
Exit For
End If
Next i


If Not found Then
Cells(a, j).Interior.ColorIndex = xlNone
End If
Next j
End Sub
 
Katılım
29 Kasım 2024
Mesajlar
9
Excel Vers. ve Dili
Excel 2016
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, [A1:Q1000]) Is Nothing Then Exit Sub

Dim a As Long
Dim say As Long
Dim kelimeler As Variant
Dim renkler As Variant
Dim i As Long
Dim j As Long
Dim found As Boolean

a = Target.Row

kelimeler = Array("İPTAL", "KAPALI", "HİZMET DIŞI", "BEKLEMEDE", "ONAY BEKLEYEN", "RET", "YENİ")
renkler = Array(3, 4, 5, 6, 7, 8, 9)

Range("A" & a & ":Q" & a).Interior.ColorIndex = xlNone


For j = 1 To 17
found = False
For i = LBound(kelimeler) To UBound(kelimeler)
If InStr(1, Cells(a, j).Value, kelimeler(i), vbTextCompare) > 0 Then
Cells(a, j).Interior.ColorIndex = renkler(i)
found = True
Exit For
End If
Next i


If Not found Then
Cells(a, j).Interior.ColorIndex = xlNone
End If
Next j
End Sub
Bu kodda tek satırı boyuyuor hocam
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
638
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
Bu kod kelimeleri yazdıkça ilgili satırını boyamaktadır.
Sizin isteğiniz kod içine yazacağınız kelimelerimin tamamının mı tek seferde işaretlemesini istiyorsunuz
 
Üst