• DİKKAT

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

tarihe göre toplama

Katılım
5 Eylül 2007
Mesajlar
1,247
Excel Vers. ve Dili
ofis 2010
iyi günler; çok sık kullandığım
Kod:
=EĞER(EĞERSAY(C$1:$C1;C1)<>1;EĞER(C1=C1;"";ÇOKETOPLA($A$1:$A$15855;$C$1:$C$15855;$C$1));ÇOKETOPLA($A$1:$A$15855;$C$1:$C$15855;C1))
formülü makro olarak kullanma imkanı olabilir mi., işlem olarak aynı tarihteki değerleri tek olarak topluyor. örnek dosya ektedir, Teşekkürler
 

Ekli dosyalar

  • toplama.xlsx
    toplama.xlsx
    20.9 KB · Görüntüleme: 22
  • Toplama.jpg
    Toplama.jpg
    126.9 KB · Görüntüleme: 12
Son düzenleme:
Kullandığınız formülü incelemedim.
Anladığım kadarıyla, C sütunundaki tarihin her değiştiği satıra,
bu tarihle aynı olan satırlardaki A sütunu değerlerini toplamak istiyorsunuz.
Aşağıdaki kodlardan herhangi birini kullanabilirsiniz.
Rich (BB code):
Sub TOPLAMA()
[D:D].ClearContents: son = Cells(Rows.Count, "A").End(3).Row
For sat = 2 To son
    If WorksheetFunction.CountIf(Range("C2:C" & sat), Cells(sat, "C")) = 1 Then
        Cells(sat, "D") = WorksheetFunction.SumIf(Range("C2:C" & son), Cells(sat, "C"), Range("A2:A" & son))
        Cells(1, "D") = Cells(1, "D") + Cells(sat, "D")
    End If: Next
End Sub


Sub TOPLAMA2()
[D:D].ClearContents: son = Cells(Rows.Count, "A").End(3).Row
For sat = 2 To son
    If WorksheetFunction.CountIf(Range("C2:C" & sat), Cells(sat, "C")) = 1 Then
        For satc = sat To son
            If Cells(satc, "C") = Cells(sat + 1, "C") Then
                Cells(sat, "D") = Cells(sat, "D") + Cells(satc, "A")
                Cells(1, "D") = Cells(1, "D") + Cells(satc, "A")
            Else
                sat = satc - 1
                Exit For
            End If: Next: End If
Next
End Sub
 
Kullandığınız formülü incelemedim.
Anladığım kadarıyla, C sütunundaki tarihin her değiştiği satıra,
bu tarihle aynı olan satırlardaki A sütunu değerlerini toplamak istiyorsunuz.
Aşağıdaki kodlardan herhangi birini kullanabilirsiniz.
Teşekkür ederim sorunsuz çalışıyor, işi çalışmalar
 
Bir önceki cevabıma da bakınız.
Formülü uygulayıp, sonuçlarını değer yazdırmak için aşağıdaki gibi de düşünülebilirdi.
Rich (BB code):
Sub TOPLAMA3()
son = Cells(Rows.Count, 1).End(3).Row
With Range("D2:D" & son)
    .Formula = "=IF(COUNTIF($C$2:C2,C2)=1,SUMIF($C$2:$C$" & son & ",$C2,$A$2:$A$" & son & "),"""")"
    .Value = .Value
End With
[D1] = WorksheetFunction.Sum(Range("A2:A" & son))
End Sub
 
Bir önceki cevabıma da bakınız.
Formülü uygulayıp, sonuçlarını değer yazdırmak için aşağıdaki gibi de düşünülebilirdi.
hepsi sonuca ulaştırıyor, sürekli kullandığım işlemde makrolar daha pratik oluyor, şablon oluşturup kullanmak şeklinde, formülün kısalmış halinide not aldın, pratik işlemlerde kullanabilirim. Teşekkürler.
 
Geri
Üst