Makroyla basit bir tablo

Katılım
16 Mart 2006
Mesajlar
11
Değerli Üstadlar;
bir listem var ve binlerce satırdan oluşmakta.
Geliş tarihine göre o tarih aralığı içinde şahıs bazında J sütunundaki kime kaç adet dosya gelmiş, o şahıs kaç dosya çıkarmış ve kalan kaç adet diye basit bir tabloya ihtiyacım var.

Yardımlarınız için şimdiden teşekkürler...
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Aşağıdaki kodu bir modul sayfasına kopyalayarak çalıştırınız. Bir butona da bağlayabilirsiniz

Kod:
Sub derle()
Set sh1 = Sheets("Sayfa1")
Set sh2 = Sheets("Sayfa2")
son1 = sh1.Cells(65536, 1).End(xlUp).Row
sh2.Columns("A:D").ClearContents
sh2.Cells(1, 1) = "İsim"
sh2.Cells(1, 2) = "Gelen"
sh2.Cells(1, 3) = "Çıkan"
sh2.Cells(1, 4) = "Kalan"
For i = 1 To son1
  son2 = sh2.Cells(65536, 1).End(xlUp).Row
  Set rg = sh1.Range("J2:J" & i + 1)
  x = Application.WorksheetFunction.CountIf(rg, sh1.Cells(i + 1, 10))
  If x = 1 Then
     sh2.Cells(son2 + 1, 1) = sh1.Cells(i + 1, 10)
     sh2.Cells(son2 + 1, 2) = Application.WorksheetFunction.CountIf(sh1.Range("J2:J" & son1), sh1.Cells(i + 1, 10))
    For j = 2 To son1
       If sh1.Cells(j, 10) = sh2.Cells(son2 + 1, 1) And sh1.Cells(j, 7) <> 0 Then
       deger = deger + 1
       End If
    Next j
    sh2.Cells(son2 + 1, 3) = deger
    deger = 0
    sh2.Cells(son2 + 1, 4) = sh2.Cells(son2 + 1, 2) - sh2.Cells(son2 + 1, 3)
  End If
  Set rg = Nothing
Next i
sh2.Select
Set sh1 = Nothing
Set sh2 = Nothing
End Sub
 
Katılım
16 Mart 2006
Mesajlar
11
te&#351;ekk&#252;rler fbc...
butona da atad&#305;m ama &#231;al&#305;&#351;mad&#305;... &#246;rnek bir dosya ekleyebilirseniz sevinirim...
 
Katılım
16 Mart 2006
Mesajlar
11
Te&#351;ekk&#252;rler fpc ama k&#252;&#231;&#252;k bir sorun kalm&#305;&#351;....
&#214;ncelikle L s&#252;tunundaki tarihleri ay baz&#305;nda ay&#305;rt edip sonra isimleri ve daha sonra da &#231;&#305;kanlar&#305; yazmas&#305; gerek.

Yani bana laz&#305;m olan; A&#287;ustos ay&#305;nda (01.08.2007-31.08.2007) tarihleri aras&#305;nda ali'ye gelen dosya ve ayn&#305; tarihler aras&#305;nda alinin &#231;&#305;kard&#305;&#287;&#305; dosya say&#305;s&#305; olmal&#305;yd&#305;...
Bu listeyi her ay Ocak, &#351;ubat, mart ...bu &#351;ekilde almam&#305;z gerek...
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,622
Excel Vers. ve Dili
Pro Plus 2021
Alternatif, ay ve y&#305;l&#305; sayfadan veya inputboxla alabilirsiniz.
Kod:
Sub Ozetle()
    ay = 8: yil = 2007
    
    Application.ScreenUpdating = False
    Set s1 = Sheets("Sayfa1")
    Set S2 = Sheets("Sayfa2")
    son1A = s1.[a65536].End(3).Row
    S2.[A:H].Delete
    s1.Range("G1:G" & son1A & ",J1:J" & son1A & ",L1:L" & son1A).Copy S2.[F1]
    S2.Select
    sonG = [G65536].End(3).Row
    Range("G1:G" & sonG).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=[A1], Unique:=True
    [A1].Copy [A1:D1]
    [A1:D1] = [{"&#304;sim", "Gelen",  "&#199;&#305;kan" ,  "Kalan" }]
    sonA = [a65536].End(3).Row
    alan1 = Range("g2:G" & sonG).Address
    alan2 = Range("h2:H" & sonG).Address
    alan3 = Range("f2:F" & sonG).Address
    Range("B2:B" & sonA).Formula = "=SUMPRODUCT(--(MONTH(" & alan2 & ")=" & ay & "),--(YEAR(" & alan2 & ")=" & yil & "),--(" & alan1 & "=A2))"
    Range("C2:C" & sonA).Formula = "=SUMPRODUCT(--(MONTH(" & alan3 & ")=" & ay & "),--(YEAR(" & alan3 & ")=" & yil & "),--(" & alan1 & "=A2))"
    Range("D2:D" & sonA).Formula = "=B2-C2"
    Range("B2:D" & sonA).Value = Range("B2:D" & sonA).Value
    [F:H].Delete
    [A:D].EntireColumn.AutoFit
    Set s1 = Nothing
    Set S2 = Nothing
    Application.ScreenUpdating = True
End Sub
 
Katılım
16 Mart 2006
Mesajlar
11
say&#305;n fbc sizin &#246;rne&#287;iniz tam istedi&#287;im gibi ama &#351;u tarih aral&#305;&#287;&#305;n&#305; da belirleyerek raporu alabilirsek tam i&#351;ime yarayacak...

veyselemre ilginizden dolay&#305; sizede &#231;ok te&#351;ekk&#252;r ederim ama fbc nin &#246;rne&#287;i tam olarak istedi&#287;ime yak&#305;n...
 

AS3434

Özel Üye
Katılım
13 Ocak 2005
Mesajlar
1,820
Excel Vers. ve Dili
M.Office/Excel 2007 Türkçe
Bir örnek de ben vereyim.
 
Katılım
16 Mart 2006
Mesajlar
11
AS3434 VE fpc &#231;ok te&#351;ekk&#252;r ederim iki &#246;rnek de &#231;ok g&#252;zel olmu&#351; ellerinize sa&#287;l&#305;k...
 
Üst