• DİKKAT

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

Otomatİk KoŞ.bİÇİm.

  • Konbuyu başlatan Konbuyu başlatan RIKU
  • Başlangıç tarihi Başlangıç tarihi
Katılım
18 Haziran 2006
Mesajlar
112
Otomatik Koşullu Biçimlendirme

ArkadaŞlar Benİm Sorum ŞÖyle; A SÜtununda GÖrdÜĞÜnÜz Gİbİ İsİmler Var Ve Hemen SaĞindakİ İkİ SÜtunda Da Bazi Sayilar Mevcut. Benİm YapamadiĞim A SÜtununa İsİmlerİ Ve İlgİlİ Rakamlari Gİrİnce, A SÜtunundakİ İsİmlerle Alakali KoŞullu BİÇİmlendİrmelerİn Otomatİk Olarak Devreye Gİrmesİdİr. Burda Belkİ Problem Şu Olabİlİr, İsİmler Yanliz Bu 3 İsİmle Sinirli KalmayacaĞidir. Bunun İÇİn İlerde Çikabİlecek Extra İsİmler İÇİn De Uygun Bİr Kod Yazabİlİr Mİsİnİz? Şİmdİden Yardimci Olmaya ÇaliŞanlara TeŞekkÜrler.
 
Son düzenleme:
Siz anlatmışsınız ama ben anlamadım...

extra ( ! ) isimlere uygulanacak formül nedir? Yani, Mahmut diye biri ilave edilirse, ne olmasını istiyorsunuz? Veya Osman eklenirse koşul ne olacak? Daha açık ifade edebilirseniz ileride problem ( ! ) yaşamamanız için kafa yorabiliriz.
 
İstediğim şöyle eklenen isimlere göre koşullu biçimlendirmeler çalışacak. Diğer söylediğim ise ilk defa eklenen isimlere göre kendim vba kısmında yeni isme göre tanımlama yapabilirmiyim?
 
Selamlar,

İlk olarak sorunuzun başlığını düzeltebilirmisiniz. Aramalarda problem olmaması açısından.

Aşağıdaki kodu kullanmak istediğiniz sayfanın kod bölümüne uygulayıp denermisiniz.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, [C:C]) Is Nothing Then Exit Sub
    
    If UCase(Replace(Replace(Target.Offset(0, -2), "ı", "I"), "i", "İ")) = "AHMET" And Target.Offset(0, -1) > Target Then
    Target.Offset(0, -2).Interior.ColorIndex = 3
    Else
    Target.Offset(0, -2).Interior.ColorIndex = xlNone
    
    If UCase(Replace(Replace(Target.Offset(0, -2), "ı", "I"), "i", "İ")) = "ALİ" And (Target.Offset(0, -1) + Target) > 50 Then
    Target.Offset(0, -2).Interior.ColorIndex = 4
    Else
    Target.Offset(0, -2).Interior.ColorIndex = xlNone
    
    If UCase(Replace(Replace(Target.Offset(0, -2), "&#305;", "I"), "i", "&#304;")) = "MEHMET" And Target.Offset(0, -1) < Target Then
    Target.Offset(0, -2).Interior.ColorIndex = 5
    Else
    Target.Offset(0, -2).Interior.ColorIndex = xlNone
    
    End If: End If: End If
End Sub

&#304;simler artt&#305;k&#231;a kod i&#231;indeki a&#351;a&#287;&#305;daki sat&#305;r&#305; kopyalay&#305;p ismi de&#287;i&#351;tirmeniz ve "ColorIndex=5" &#351;eklinde olan ifadenin say&#305;sal de&#287;erini de&#287;i&#351;tirmeniz gerekecektir. Bu renk de&#287;eridir.

Ayr&#305;ca a&#351;a&#287;&#305;daki sat&#305;r&#305; ne kadar kopyalarsan&#305;z kodun sonuna o kadar adet " :End If " ifadesi eklemeniz gerekmektedir.

Kod:
    If UCase(Replace(Replace(Target.Offset(0, -2), "&#305;", "I"), "i", "&#304;")) = "MEHMET" And Target.Offset(0, -1) < Target Then
    Target.Offset(0, -2).Interior.ColorIndex = 5
    Else
    Target.Offset(0, -2).Interior.ColorIndex = xlNone

&#214;rnek olarak koda "VEL&#304;" isminide eklemek isterseniz kod a&#351;a&#287;&#305;daki &#351;ekilde olmal&#305;d&#305;r.

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, [C:C]) Is Nothing Then Exit Sub
    
    If UCase(Replace(Replace(Target.Offset(0, -2), "&#305;", "I"), "i", "&#304;")) = "AHMET" And Target.Offset(0, -1) > Target Then
    Target.Offset(0, -2).Interior.ColorIndex = 3
    Else
    Target.Offset(0, -2).Interior.ColorIndex = xlNone
    
    If UCase(Replace(Replace(Target.Offset(0, -2), "&#305;", "I"), "i", "&#304;")) = "AL&#304;" And (Target.Offset(0, -1) + Target) > 50 Then
    Target.Offset(0, -2).Interior.ColorIndex = 4
    Else
    Target.Offset(0, -2).Interior.ColorIndex = xlNone
    
    If UCase(Replace(Replace(Target.Offset(0, -2), "&#305;", "I"), "i", "&#304;")) = "MEHMET" And Target.Offset(0, -1) < Target Then
    Target.Offset(0, -2).Interior.ColorIndex = 5
    Else
    Target.Offset(0, -2).Interior.ColorIndex = xlNone
    
    If UCase(Replace(Replace(Target.Offset(0, -2), "&#305;", "I"), "i", "&#304;")) = "VEL&#304;" And Target.Offset(0, -1) < Target Then
    Target.Offset(0, -2).Interior.ColorIndex = 6
    Else
    Target.Offset(0, -2).Interior.ColorIndex = xlNone
    
    End If: End If: End If: End If
End Sub
 
Son düzenleme:
Say&#305;n Cost Control ve Say&#305;n Fructose'a ayr&#305; ayr&#305; te&#351;ekk&#252;r ediyorum. Biraz ge&#231; oldu ama kusura bakmay&#305;n. Siteye ge&#231; girebildim. Konuyu de&#287;i&#351;tirmeye &#231;al&#305;&#351;t&#305;m . Umar&#305;m olmu&#351;tur. &#304;yi G&#252;nlerrrr.
 
Geri
Üst