• DİKKAT

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

Aynı tarihleri ürün koduna göre toplama

  • Konbuyu başlatan Konbuyu başlatan Mesafe
  • Başlangıç tarihi Başlangıç tarihi
Katılım
29 Kasım 2011
Mesajlar
235
Excel Vers. ve Dili
Excel 2016 English
Tabloda aynı tarihteki adet ve tutarları tek tarih yanında toplamak istiyorum, ancak ürün kodları aynı olanları farklı tarihlerde de olsa ilk tarihin toplamı içerisinde görmek istiyorum bunun için bir formül yazılabilir mi ?
 

Ekli dosyalar

Son düzenleme:
Merhaba,

10.04.2012 = 5

Bu değere nasıl ulaştınız. Çünkü bu tarihte olan B858 kodu 12.04.2012 tarihindede var. Bu tarihteki değerlerde 10.04.2012 tarihinde gösterilmeyecek mi?

Ben sorunuzu şu şekilde anladım;

Sorgulanan tarihteki benzersiz ürün kodları sonraki diğer tarihlerede bakılarak miktarları ve tutarları toplanacak.
 
Evet hocam haklısınız A845 ile beraber 9 adet ve tutar 45 olacak. Dolayısyla 12.04 tarihi de 1 adet 10 TL kalacak.
Dosyayı da değiştirdim.
 
Son düzenleme:
Merhaba,

Soru basit gibi görünüyor. Fakat aslında karmaşık bir yapı var. Yerleşik işlevlerle yardımcı sütun kullanmadan bir çözümü olduğunu düşünmüyorum. Bu sebeple ben bir kullanıcı tanımlı fonksiyon hazırladım.

Kod:
Option Explicit
 
Function KTOPLA(Aranan_Tarih As Range, Ürün_Alanı As Range, Tarih_Alanı As Range, Toplam_Alanı As Range)
    Dim Yeni_Alan As Range, Veri As Range, Dizi As New Collection, İlk_Veri As String, Eleman As Variant
 
    Application.Volatile True
 
    Set Yeni_Alan = Union(Ürün_Alanı, Tarih_Alanı)
 
    On Error Resume Next
 
    For Each Veri In Yeni_Alan
        If Veri.Value = Aranan_Tarih Then
            Dizi.Add İlk_Veri, CStr(İlk_Veri)
        Else
            İlk_Veri = Veri.Text
        End If
    Next
 
    On Error GoTo 0
 
    For Each Eleman In Dizi
        If Evaluate("=SUMPRODUCT((" & Tarih_Alanı.Address & "<" & CLng(Aranan_Tarih) & ")*(TEXT(" & Ürün_Alanı.Address & ",""@"")=""" & Eleman & """)*(" & Toplam_Alanı.Address & "))") = 0 Then
            KTOPLA = KTOPLA + Evaluate("=SUMPRODUCT((" & Tarih_Alanı.Address & ">=" & CLng(Aranan_Tarih) & ")*(TEXT(" & Ürün_Alanı.Address & ",""@"")=""" & Eleman & """)*(" & Toplam_Alanı.Address & "))")
        End If
    Next
End Function

Fonksiyonun sözdizimi aşağıdaki gibidir;

Kod:
=KTOPLA(Sorgulanan_Tarih;Ürün_Alanı;Tarih_Alanı;Toplam_Alanı)

I2 hücresi için örneklersek formül aşağıdaki gibi olmalıdır.

Kod:
=KTOPLA($H2;$A$2:$A$100;$B$2:$B$100;C$2:C$100)


Ayrıca uygulamalı örnek dosya ektedir.
 

Ekli dosyalar

Gönülden Teşekkürler

Sn. Ayhan,
Gerçekten büyük emek harcamışsınız ama kullanılacağı yerde sağlayacağı kolaylık ve fayda ile her zaman hayır dua alacaksınız.
Çok teşekkürler
 
Geri
Üst