Iki farklı liste farkı ayırma hakkında tablo

maznun5255

Bana bir harf öğretenin kırk yıl kölesi olurum.
Altın Üye
Katılım
26 Nisan 2015
Mesajlar
189
Excel Vers. ve Dili
Microsoft® Excel® Microsoft 365 için MSO 64 bit
Altın Üyelik Bitiş Tarihi
18-07-2025
Merhaba sn hocalarım.
Excel de aşağıda eklediğim linkte bulunan dosyamda sistem tarafından otomatik aldıgım iki farklı tarihte çekilmiş bir liste mevcuttur.Dosyada ESKİ-YENİ sayfasında yesil renk ile boyanan sayfalar ESKİ tarihli bir listedir.Yine aynı sayfada sarı renkle boyanan sayfalar YENİ tarihli bir listedir.Ben iki listeyi aynı sayfada ( ESKİ - YENİ ) sayfasında birleştirdim.R sutununa DURUM yazarak ESKİ lere ESKİ , YENİ lere YENİ yazdım.Bu sayfada değişiklik yapılmış olup ; yapılan değişiklikler şu şekildedir.
A= Her iki listede olan ama ( M ) sutununda; Ham Planlanan- ( N ) sutununda Ham Çıkan - ( O ) sutununda
-Ham Bakiye kısımlarında miktarlarda değişiklik olabilir.
Yani şöyle anlatırsam ; eski listede M16 hücresinde değer 1959 N16 hücresinde değer 1083 O16 hücresinde 876 iken ; yeni listede M98 1959 ( aynı ) N98 1643 O98 ise 316 dır.

Bu ayrımı ben amatörce pivot table yaparak ÖZET sayfasında görülecegi gibi özet yapıyorum.
Daha sonra bu özeti kopyalayarak SON HALİ sayfasında görülecegi gibi I sutununa FARK olarak bir sutun ekleyip öyle bulabiliyorum.

Aklınıza farklı bir çözüm gelebilir mi ?



Bu konuda bana yardımcı olabilirmisiniz ?

Teseekkur eder iyi çalışmalar dilerim.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhaba, M, N ve O sütunu dışında; bu iki satırı (16 ve 98'inci satırlar) karşılaştıracağınızı nereden anlamak lazım, bu iki satırın karşılaştırılacağına hangi kritere göre karar veriliyor.?
 

maznun5255

Bana bir harf öğretenin kırk yıl kölesi olurum.
Altın Üye
Katılım
26 Nisan 2015
Mesajlar
189
Excel Vers. ve Dili
Microsoft® Excel® Microsoft 365 için MSO 64 bit
Altın Üyelik Bitiş Tarihi
18-07-2025
Ömer bey aslında 16M de 1959 kg sipariş miktarı.bugun N16 da siparişin 1083 kg ını gondermişim.Geri O16 da 876 kg kalmıs.

Yeni olarak cektiğim listede 98M de aynı siparişten ( 1959 kg ) dan N98 de 1643 kg göndermişim Geri O98 de 316 kg kalmış

1959 kg toplam ihtiyacta birinci listede 876 kg kalmışken ikinci listede 316 kg kalmış.

Yani 876-316 = 560 kg arada cıkıs yapılmış.
Satır düzeyinde bakıldıgında bu satırda değişiklik yapılmış görünüyor.
Diğer satırlarda dikkat edeceğimiz alan M-N-O sütunudur.
M sutunu ihtiyac N sutunu cıkılan O sutunu kalandır.
 

maznun5255

Bana bir harf öğretenin kırk yıl kölesi olurum.
Altın Üye
Katılım
26 Nisan 2015
Mesajlar
189
Excel Vers. ve Dili
Microsoft® Excel® Microsoft 365 için MSO 64 bit
Altın Üyelik Bitiş Tarihi
18-07-2025
Ömer bey aslında 16M de 1959 kg sipariş miktarı.bugun N16 da siparişin 1083 kg ını gondermişim.Geri O16 da 876 kg kalmıs.

Yeni olarak cektiğim listede 98M de aynı siparişten ( 1959 kg ) dan N98 de 1643 kg göndermişim Geri O98 de 316 kg kalmış

1959 kg toplam ihtiyacta birinci listede 876 kg kalmışken ikinci listede 316 kg kalmış.

Yani 876-316 = 560 kg arada cıkıs yapılmış.
Satır düzeyinde bakıldıgında bu satırda değişiklik yapılmış görünüyor.
Diğer satırlarda dikkat edeceğimiz alan M-N-O sütunudur.
M sutunu ihtiyac N sutunu cıkılan O sutunu kalandır.
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,653
Excel Vers. ve Dili
Pro Plus 2021
Merhaba, ekte tablolarınızı karşılaştıran özet sayfası oluşturuldu.

Kod:
Sub ozetOlustur()
    Sheets("eski-yeni").Select
    ksut = Array(1, 4, 7, 9, 11, 12)
    aSon = Cells(Rows.Count, 1).End(3).Row
    shVeri = Range(Cells(2, 1), Cells(aSon, 18)).Value2
    With CreateObject("scripting.dictionary")
        For i = LBound(shVeri) To UBound(shVeri)
            idx = Application.Index(shVeri, i, ksut)
            ID = Join(idx, "|")
            If Not .Exists(ID) Then
                ReDim w(1 To 2)
                Select Case shVeri(i, 18)
                Case "eski"
                    w(1) = shVeri(i, 15)
                Case "yeni"
                    w(2) = shVeri(i, 15)
                End Select
                .Add ID, w
            Else
                w = .Item(ID)
                Select Case shVeri(i, 18)
                Case "eski"
                    w(1) = shVeri(i, 15)
                Case "yeni"
                    w(2) = shVeri(i, 15)
                End Select
                .Item(ID) = w
            End If
        Next i
        IDs = (.keys)
        its = Application.Index(.items, 0, 0)
    End With
    uz = UBound(its)
    Sheets("ozetV").Select
    [a2:I65536].ClearContents
    For i = 1 To uz
        dy = Split(IDs(i - 1), "|")
        Cells(i + 1, 1).Resize(, 6).Value = dy
        Cells(i + 1, 7) = its(i, 1)
        Cells(i + 1, 8) = its(i, 2)
        Cells(i + 1, 9) = its(i, 2) - its(i, 1)
    Next i
    Columns("A:I").Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess
    Columns("A:I").EntireColumn.AutoFit
End Sub
 

Ekli dosyalar

maznun5255

Bana bir harf öğretenin kırk yıl kölesi olurum.
Altın Üye
Katılım
26 Nisan 2015
Mesajlar
189
Excel Vers. ve Dili
Microsoft® Excel® Microsoft 365 için MSO 64 bit
Altın Üyelik Bitiş Tarihi
18-07-2025
Veysel bey öncelikle ellerinize sağlık.Tesekkur ederim.Bu işlev sayfalara yeni veriler girdiğim zamanda çalışır mı ?
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhabalar.

Ekteki belgeyi satır sınırlaması olmaksızın kullanabilirsiniz.

İyi günler dilerim.
 

Ekli dosyalar

maznun5255

Bana bir harf öğretenin kırk yıl kölesi olurum.
Altın Üye
Katılım
26 Nisan 2015
Mesajlar
189
Excel Vers. ve Dili
Microsoft® Excel® Microsoft 365 için MSO 64 bit
Altın Üyelik Bitiş Tarihi
18-07-2025
Ömer bey süper olmuş elleriniz dert görmesin.Cok teşekkür ediyorum.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Ömer bey süper olmuş elleriniz dert görmesin.Cok teşekkür ediyorum.
Estağfurullah, ihtiyaç tam olarak karşılanmışsa mesele yok.

İyi günler dilerim.
 
Üst