• DİKKAT

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

Soru Renklere göre toplam aldırma sorunu

NADİR YILDIZ

Altın Üye
Katılım
7 Ocak 2006
Mesajlar
1,418
Excel Vers. ve Dili
2016 Türkçe
renklere göre topla makrosu ile renkli olanları topluyorum ancak biçimlendirme yapılmış sütundakileri toplama yapmıyor.
makroda nasıl bir değişiklik yapmam gerekiyor.





 

Ekli dosyalar

Siz renkleri koşullu biçimlendirme ile vermişsiniz.

Bu fonksiyonlar fiziksel renk değişiminde yani excelin menüsünde ki renk paletinden elle hücreye renk verdiğinizde çalışmaktadır.

Siz toplam almak için hücrenin renklemesinde kullandığınız koşulları TOPLA.ÇARPIM-ÇOKETOPLA-ETOPLA gibi fonksiyonlarında kullanarak toplam alabilirsiniz.
 
üstad
örnek dosyamda ve orjinal dosyamda tutarlar mecburen koşullu biçimlendirildiği için renklendirme yapmıyor dediğiniz gibi.
koşullu biçimlendirmeyi iptal etme yada değiştirme şansım yok haliyle.
bu örnek dosyamda söylediğiniz fonksiyonları nasıl kullanabilirim.
orayı pek anlamadım.k.biçimlendirmedemi yoksa renklerin karşısında mı ?

iyi çalışmalar
 

Ekli dosyalar

Mesela hücrelerin mavi rengi alması için gereken koşul nedir?

Koşullu biçimlendirmeyi incelediğimizde 1 ile 18 arası değerler bu rengi alıyor.

Siz bu değerlerin toplamına ulaşmak istiyorsunuz. Bu sebeple ÇOKETOPLA ya da TOPLA.ÇARPIM fonksiyonlarını kullanabilirsiniz.

C++:
=ÇOKETOPLA(E8:E14;E8:E14;">="&1;E8:E14;"<="&18)

C++:
=TOPLA.ÇARPIM((E8:E14);(E8:E14>=1)*(E8:E14<=18))
 
sayın efsanenin yardımcı olduğu örnek dosyamdaki gibi ft numaraları aynı olmak şartıyla kdv tutarları aynı olanları mavi olarak renklendirmesi
orjinal dosyamdaki koşullarda şöyle ;

=VE($B9=DÜŞEYARA($B9;$J$9:$J$2006;1;0);$E9=DÜŞEYARA($B9;$J$9:$M$2006;4;0))
 
Ben mesajımı düzenlerken cevap yazmışsınız. Son mesajımı tekrar okuyunuz.
 
Üstad verdiğiniz cevap için teşekkür ediyorum.
öncelikle özür dilerim ben tam olarak istediğimi anlatamadım size
orjinal dosyamdan bir kesit alarak ekledim
E ve M sütunlarındaki mavi olan tutarları üstte toplatarak aradaki fark varmı yada ne kadar fark vardır bunu görmek istiyorum
sizi uğraştırdığım için tekrar özür dilerim

iyi çalışmalar
 

Ekli dosyalar

Deneyiniz.

C++:
=TOPLA.ÇARPIM((EĞERSAY(J9:J34;B9:B34))*(EĞERSAY(M9:M34;E9:E34))*(E9:E34))
 
Benim Kullandığım var isterseniz bir bakın. Ayrıca Makroyu çalıştır Butonu da var.
 

Ekli dosyalar

=TOPLA.ÇARPIM((EĞERSAY(J9:J34;B9:B34))*(EĞERSAY(M9:M34;E9:E34))*(E9:E34))

üstad sizin verdiğiniz formülde aynı ft numaralarına göre toplam alıyor.benim istediğim renge göre E ve M sütunlarındaki mavileri toplaması.çünkü E sütunundaki kdv ile M sütunundaki kdv farklı olabiliyor.Buradaki sorun zaten Mavi sütunların koşullu biçimlendirme ile renklenmesi hücreleri ben renklendirdiğimde makro kodu çalışıyor.biçimlendirmeden kaynaklı sorun var.
teşekkürler

iyi çalışmalar
 

Ekli dosyalar

Renkle ilgili durum için #4 nolu mesajımı tekrar okuyunuz.
 
üstad şunu anladım
koşullu biçimlendirilmiş hücrelerin renge göre toplaması mümkün değil
excelde böyle bişey yok diyorsunuz öylemi ?

iyi çalışmalar
 
Yok demiyorum KTF ile olmuyor. Normal makro kodu ile toplam alınabilir.
 
Aslında makroya gerek yok gibi görünüyor.

Siz mavi rengi verirken baktığınız koşul nedir? Mesela E9 hücresi neye göre mavi oluyor?

Bu koşulu bilirsek yerleşik işlevlerle sorun çözülebilir.

Bu arada son paylaştığınız dosyada E sütununda ki mavi renkli hücreleri süzüp toplamını aldığımızda benim önerdiğim formülle aynı sonucu veriyor.

Yine de koşullu biçimlendirme renklerine göre işlem yapan kodu paylaşıyorum.

C++:
Option Explicit

Sub Renge_Gore_Topla()
    Dim Veri As Range, Son As Long, Toplam_E As Double, Toplam_M As Double
   
    Son = Cells(Rows.Count, 1).End(3).Row
   
    For Each Veri In Range("E9:E" & Son & ",M9:M" & Son)
        Select Case Veri.Column
            Case 5
                If Veri.DisplayFormat.Interior.Color = Range("D2").DisplayFormat.Interior.Color Then
                    Toplam_E = Toplam_E + Veri.Value
                End If
            Case 13
                If Veri.DisplayFormat.Interior.Color = Range("L2").DisplayFormat.Interior.Color Then
                    Toplam_M = Toplam_M + Veri.Value
                End If
        End Select
    Next

    Range("E2") = Toplam_E
    Range("M2") = Toplam_M

    MsgBox "Renge göre toplamlar güncellenmiştir.", vbInformation
End Sub
 
koşullar bu şekilde üstat

B ve J sütunundaki ft numaraları aynı olanları kırmızı sarı ile biçimlendirme yaparken
B ve J sütunundaki ft numalarından aynı olanların E ve M sütununda KDV tutarları aynı ise lacivert sarı olarak biçimlendirme yapıyor
 

Ekli dosyalar

  • korhan ayhan 001.png
    korhan ayhan 001.png
    231.2 KB · Görüntüleme: 4
  • korhan ayhan 002.png
    korhan ayhan 002.png
    213.3 KB · Görüntüleme: 4
Siz paylaştığınız dosyada 28.892,53 TL olması gerekiyor demişsiniz. Bu tutardan emin misiniz?

Benim verdiğim makro doğru sonucu üretti mi?
İlk önerdiğim formül ile makro arasında bir fark oldu mu?
 
Geri
Üst