• DİKKAT

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

Aylara göre toplam aldırmak

Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Merhaba. Şubelere ait verilerin yanyana sütunlarda olduğu bir dosya yapısında A ve D sütunlarındaki ay & yıllara göre B ve E sütunlarındaki rakamların toplamlarının K sütununa alınması TEK formül ve/veya makro ile mümkün mü ?

Örnek dosyanın linki : http://s5.dosya.tc/server3/gmo3au/KOLONLARA_GORE_AYLIK_TOPLAM.xls.html
 
Merhaba
Bu formül işinizi görür mü?
Kod:
=TOPLA.ÇARPIM((YIL($A$2:$A$6)=$I2)*(AY($A$2:$A$6)=$H2)*($B$2:$B$6))+TOPLA.ÇARPIM((YIL($D$2:$D$6)=$I2)*(AY($D$2:$D$6)=$H2)*($E$2:$E$6))
 
Sayın asi_kral çok teşekkür ediyorum, harika olmuş. Tam da budur. Çok veri olması halinde formül yerine kullanılabilecek makro da kullanılabilir mi ?
 
Makro da yazılır. Şimdi vaktim kalmadı yarın yazar gönderirim.
 
Deneyiniz.
Kod:
Sub tpl()
With Sheets("AÇIK HESAPLAR")
.Range("k2:k3").Clear
For m = 2 To .Range("H50").End(3).Row
For k = 1 To 4 Step 3
For i = 2 To .Range("A50").End(3).Row
If Year(.Cells(i, k)) = .Cells(m, "I") And Month(.Cells(i, k)) = .Cells(m, "H") Then
c = c + Cells(i, k + 1)
End If
Next i
Next k
Cells(m, "k") = c
c = 0
Next m
End With
End Sub
 
Vardar07 üstadım çok çok teşekkür ediyorum, kod müthiş olmuş, eline, aklına sağlık.
 
vardar07 üstadım, asi_kral üstadım sizlere bir kez daha teşekkür ediyorum. Hem formül hem de Kod çok işime yaradı. Acaba yüzsüzlük olmazsa şöyle bir KOD olabilir mi diye sormadan edemedim ! soldan sağa doğru sınır olmaksızın ve hangi sütunda Vade & Tutar yazılı olduğu belli olmasaydı, 1. satırında VADE yazılı olan sütunlara göre TUTAR yazılı olan sütunlardaki rakamları yine Ay ve Yıl eşleşmesine göre toplanması mümkün olur muydu ?
 
Dosya üzerinde yapılmış halini görelim olabilirmi bir bakalım.
 
tamam üstadım. hemen bir dosya hazırlayıp yüklüyorum, olmasa da canınız sağolsun, ilgileniz için teşekkür ediyorum.
 
Deneyiniz.
Kod:
Sub tpl()
   Dim rFirst As Range, r As Range
   Dim A As Range
With Sheets("ACIK HESAP")
.Range("D2:D7").Clear
   Set A = .Range("E:W")
B = .Cells(1, "W").End(1).Column - 1
For m = 2 To .Range("A50").End(3).Row
   Do
        If rFirst Is Nothing Then
         Set rFirst = A.Find("Vade")
         Set r = rFirst
      Else
         Set r = A.Find("Vade", After:=r)
 End If
 For i = 2 To .Cells(Rows.Count, r.Column).End(3).Row
If Year(.Cells(i, r.Column)) = .Cells(m, "B") And Month(.Cells(i, r.Column)) = .Cells(m, "A") Then
c = c + .Cells(i, r.Column + 1)
End If
Next i
i = Empty
.Cells(m, "D") = .Cells(m, "D") + c
c = 0
If r.Column = B Then GoTo 10
Loop
10:
Next m
End With
End Sub
 
Sayın üstadım vardar07 çok çok teşekkür ediyorum, aklınıza sağlık, çok işimize yarayacak, müthiş bir kod olmuş. Saygılarımı sunuyorum, sağlıcakla kalın.
 
Geri
Üst