Teke Düşürerek Toplama alma

Ahmet Sami

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
397
Excel Vers. ve Dili
microsoft office 2007-2010-2013-2019-2021
İyi günler,
Elimde tabloda olduğu gibi yaklaşık 10.000 kişiden oluşan bir listem var, personel isimleri farklı yıllarda veya aynı yıl içerisnde mükerrer yani tekrar edilerek yazılabiliyor.
Sizden istediğim yardım, C:C sütununda yer alan isimlerin G:G sütununa göre J sütununda yer alan bilgilerin karşısana teke düşürerek toplaması.
Örnek: Ahmet Yılmaz isimli kişi 2018 yılında üç kez tekrar yazılmış bunu teke düşürerek son satırın H sütunundan alarak toplayacak, yani enson veri ÇALIŞIYOR ondan önce PASİF ise ÇALIŞIYOR'u baz alarak toplayacak, aynı şekilde diğer kişiler ve yıllar içinde geçerli. Dosya ektedir.

Yardımlarınız için şimdiden teşekkür ederim.
 

Ekli dosyalar

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,616
Excel Vers. ve Dili
Microsoft 365 Tr-64
C++:
Sub Özetle()
Range("K2:M5").ClearContents
SonSat = Range("C2").End(xlDown).Row
For i = 2 To Range("C2").End(xlDown).Row
    Son = WorksheetFunction.CountIf(Range("G" & i, "G" & SonSat), Range("G" & i)) + i - 1
    If WorksheetFunction.CountIf(Range("C" & i, "C" & Son), Range("C" & i)) = 1 Then
        x = WorksheetFunction.Match(Range("G" & i), Range("K1:M1"), 0)
        y = WorksheetFunction.Match(Range("H" & i), Range("J2:J5"), 0)
        Range("J1").Offset(y, x) = Range("J1").Offset(y, x) + 1
    End If
Next i
End Sub
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,553
Excel Vers. ve Dili
Pro Plus 2021
Kod:
let
    Source = Excel.CurrentWorkbook(){[Name="Tablo1"]}[Content],
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"ADI SOYADI", type text}, {"CİNSİYET", type text}, {"DOĞUM TARİHİ", Int64.Type}, {"ÇALIŞTIĞI BİRİM", type text}, {"YIL DURUMU", Int64.Type}, {"AKTİF/PASİF", type text}}),
    #"Removed Columns" = Table.RemoveColumns(#"Changed Type",{"CİNSİYET", "DOĞUM TARİHİ", "ÇALIŞTIĞI BİRİM"}),
    #"Grouped Rows" = Table.Group(#"Removed Columns", {"ADI SOYADI", "YIL DURUMU"}, {{"Count", each _, type table}}),
    #"Added Custom" =      Table.AddColumn(#"Grouped Rows" , "Last", each List.Last([Count][#"AKTİF/PASİF"])),
    #"Sorted Rows" = Table.Sort(#"Added Custom",{{"ADI SOYADI", Order.Ascending}, {"YIL DURUMU", Order.Ascending}}),
    #"Removed Columns1" = Table.RemoveColumns(#"Sorted Rows",{"Count", "ADI SOYADI"}),
    #"Reordered Columns" = Table.ReorderColumns(#"Removed Columns1",{"Last", "YIL DURUMU"}),
    #"Grouped Rows1" = Table.Group(#"Reordered Columns", {"Last", "YIL DURUMU"}, {{"Count", each Table.RowCount(_), type number}}),
    #"Pivoted Column" = Table.Pivot(Table.TransformColumnTypes(#"Grouped Rows1", {{"YIL DURUMU", type text}}, "tr-TR"), List.Distinct(Table.TransformColumnTypes(#"Grouped Rows1", {{"YIL DURUMU", type text}}, "tr-TR")[#"YIL DURUMU"]), "YIL DURUMU", "Count", List.Sum)
in
    #"Pivoted Column"

test.gif
 

Ahmet Sami

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
397
Excel Vers. ve Dili
microsoft office 2007-2010-2013-2019-2021
Sayın Nextlevel ve Sayın VeyselEmre çok teşekkür ederim emeğinize sağlık.
 

Ahmet Sami

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
397
Excel Vers. ve Dili
microsoft office 2007-2010-2013-2019-2021
Sayın Nextlevel bu toplamı MİKTAR sayfasına yapabilir miyiz. Bu konuda yardımcı olursanız sevinirim.
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,616
Excel Vers. ve Dili
Microsoft 365 Tr-64
C++:
Sub Özetle()
Set Sh1 = Worksheets("Güncel")
Set Sh2 = Worksheets("MİKTAR")
Sh2.Range("K2:M5").ClearContents
SonSat = Sh1.Range("C2").End(xlDown).Row
For i = 2 To SonSat
    Son = WorksheetFunction.CountIf(Sh1.Range("G" & i, "G" & SonSat), Sh1.Range("G" & i)) + i - 1
    If WorksheetFunction.CountIf(Sh1.Range("C" & i, "C" & Son), Sh1.Range("C" & i)) = 1 Then
        x = WorksheetFunction.Match(Sh1.Range("G" & i), Sh2.Range("K1:M1"), 0)
        y = WorksheetFunction.Match(Sh1.Range("H" & i), Sh2.Range("J2:J5"), 0)
        Sh2.Range("J1").Offset(y, x) = Sh2.Range("J1").Offset(y, x) + 1
    End If
Next i
End Sub
 

Ahmet Sami

Altın Üye
Katılım
10 Kasım 2006
Mesajlar
397
Excel Vers. ve Dili
microsoft office 2007-2010-2013-2019-2021
Rahatsızlığım nedeni ile giriş yapamamıştım kusura bakmayın. Çok teşekkür ederim.
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,616
Excel Vers. ve Dili
Microsoft 365 Tr-64
Geçmiş olsun. Sağlıcakla kalın.
 
Üst