- Katılım
- 31 Ekim 2006
- Mesajlar
- 131
- Excel Vers. ve Dili
- excel 2010 ve 2013
DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Sub Ozet_Al()
Dim d As Object, i As Long, s, deg
Set d = CreateObject("Scripting.Dictionary")
Application.ScreenUpdating = False
Sheets("Sayfa1").Select
For i = 2 To Cells(Rows.Count, "B").End(xlUp).Row
deg = Cells(i, "B")
If Not d.exists(deg) Then
s = Cells(i, "C")
d.Add deg, s
Else
s = d.Item(deg)
s = s + Cells(i, "C")
d.Item(deg) = s
End If
Next i
Range("I2:J" & Rows.Count).ClearContents
Range("I2").Resize(d.Count, 2) = _
Application.Transpose(Array(d.keys, d.items))
Application.ScreenUpdating = True
End Sub
baska sayfalardada kullagım verıler var aynı sekılde onu demek ıstedım"tüm tekrar eden yerlerden" kastınız nedir. Soruyu açarmısınız.
şuan kodların yaptığı, b sütunundaki tüm tekrar eden verileri tekrarsız şekilde ı sütununa yazarak karşısındaki c sütununun toplamını j sütununa yazıyor.
.
Kodlardaki aralık tanımlarını yeni uygulanacak aralığa göre değiştirerek uygulayabilirsiniz.
=EĞERHATA(KÜÇÜK(EĞER(EĞERSAY($B$2:$B$364;EĞER(EĞERSAY(KAYDIR($B$2;;;SATIR($B$2:$B$364)-1);$B$2:$B$364)=1;$B$2:$B$364;""))>1;$B$2:$B$364;"");SATIR(A1));"")
=ETOPLA($B$2:$B$364;I3;$C$2:$C$364)
merhaba,
formül ile alternatif olarak kullanabilirsiniz.
Dizi formülüdür. Ctrl+shıft+enter ile kapatmayı unutmayın.
Kod:=eğerhata(küçük(eğer(eğersay($b$2:$b$364;eğer(eğersay(kaydır($b$2;;;satır($b$2:$b$364)-1);$b$2:$b$364)=1;$b$2:$b$364;""))>1;$b$2:$b$364;"");satır(a1));"")
1'den fazla listelenen sayıları bulduktan sonra toplamlarını aşağıdaki formülle alabilirsiniz.
Kod:=etopla($b$2:$b$364;ı3;$c$2:$c$364)