• DİKKAT

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

Soru Topla.Çarpım fonksiyonuna renk kodu kriteri eklenebilir mi?

Katılım
13 Mayıs 2005
Mesajlar
761
Excel Vers. ve Dili
2010 Türkçe
Merhaba arkadaşlar. Aşağıda fonksiyonla "X" olan hücreleri saydırıyorum. Yeni bir ilaveye ihtiyacım oldu ve renk kriterini eklemeyi düşündüm. Sorum bu fonksiyonun içine "X" olan hücrelerin bir kısmını renklendirirsem renklendirdiğim hücreleri sayma işleminden muaf tutabilirmiyim. Tablo büyük ve karmaşık ekleyemiyorum. Yada başka bir öneriniz varmı.

$I$3:$AM$3 hücresini bozmadan, $I6:$AM6 hücresinde X olan ama hücre rengi kırmızı olmayanları toplamak niyetim.
İnşallah derdimi anlatabilmişimdir. Teşekkrüler

=(TOPLA.ÇARPIM(($I$3:$AM$3>=1)*($I$3:$AM$3<=9)*($I6:$AM6="X")))
 
Direkt formülle renkli hücrelerle alakalı işlem yapamazsınız.
Bunun yerine KTF kullanabilir ya da kod yazabilirsiniz. Forumda daha önce benzer konula rişlenmişti.
 
Sorunumu yardımcı sütunlarla ve sitedeki diğer örneklerle uzun bir şekildede olsa çözdüm. Teşekkürler
 
Yerleşik fonksiyonla hücre rengi veremezsiniz.
Ama o fonksiyonu kullanarak koşullu biçimlendirme yapabilirsiniz.
 
Selamlar,
Farklı bir yaklaşımla,
Yardımcı satır (ya da yardımcı sütunlar) kullanarak formülle çözüm isterseniz eki inceleyebilirsiniz...


Dokuman, sizin soru mesajınızda anlatılanlardan hareketle hazırlandı.
Makro4.0 kodlarından GET.CELL (AL.HÜCRE) kodu ile Renk ad tanımlaması yapıldı ve yardımcı satırlardaki formüllerde kullanıldı.
Renk ad tanımlaması, 7. satır olan yardımcı satırdaki I7 hücresi seçilerek yapıldı.
Formülü :
=AL.HÜCRE(38;!I6)*(ŞİMDİ()^0)

Ve I7 hücresine
=EĞER(VE(I$3>=1;I$3<=9;I6="X";Renk=3);1;"")
formülü yazılıp, AM7 hücresine kadar kopyalandı.

Böylece yardımcı satırda, (3. satırda 1 ile 9 arasında Sayı olmak koşuluyla) bir üst satırda Renk Kodu = 3 (Kırmızı) olup, X yazanlara 1 yazdırıldı. Ve AN6 hücresinde de Toplam alındı.

Not : Örnek dokumanda detaylı açıklama yapmaya çalıştım...
Şahsi önerim ise, Renkler ile ilgili KTF kullanılmalı ya da kodla çözüme gidilmeli şeklinde....
 
KTF olarak da
(Acemi işidir)

Kod:
Function RenkSay(Alan As Range) As Long
Dim c As Range, s As Long
Application.Volatile
   s = 0
      For Each c In Alan
         If Cells(3, c.Column).Value >= 1 And Cells(3, c.Column).Value <= 9 _
         And c.Value = "X" And c.Interior.ColorIndex = 3 Then s = s + 1
      Next c
   RenkSay = s
End Function

kodlarını Module kopyalayın....

AN6 hücresine

=RenkSay(I6:AM6)

yazın.
 
KTF olarak da
(Acemi işidir)

Kod:
Function RenkSay(Alan As Range) As Long
Dim c As Range, s As Long
Application.Volatile
   s = 0
      For Each c In Alan
         If Cells(3, c.Column).Value >= 1 And Cells(3, c.Column).Value <= 9 _
         And c.Value = "X" And c.Interior.ColorIndex = 3 Then s = s + 1
      Next c
   RenkSay = s
End Function

kodlarını Module kopyalayın....

AN6 hücresine

=RenkSay(I6:AM6)

yazın.

Teşekkür ederim akşam inceleyeceğim her iki mesajınızıda.
 
Alternatif;

TOPLA.ÇARPIM+KTF kurgulaması uygulanmıştır.

Not : KTF'nin sonuç vermesi için hücrelerin dolgu renginin elle değiştirilmiş olması gerekir. Koşullu biçimlendirme ile dolgu rengi verilen hücrelerde KTF çalışmayacaktır.
 

Ekli dosyalar

Sağolun hocam ilginiz için teşekkür ederim.
 
Geri
Üst