• DİKKAT

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

Makro İle Sütündaki bilgileri saydırma .

  • Konbuyu başlatan Konbuyu başlatan HD1975
  • Başlangıç tarihi Başlangıç tarihi
Katılım
13 Şubat 2009
Mesajlar
289
Excel Vers. ve Dili
office 2003
Merhaba ;

Bir tablom var ve butabloda A sütununda müşteri numaraları var,H sütununda
ise satıra yazılan verinin kayıt tarihi var.I sütunundada kaydeden kullanıcı ismi var.

---a----------h--------------I---------
ch-0001---20.04.2009-----c:\fm1\k2
ch-0002---22.04.2009-----c:\fm1\k1
ch-0001---29.04.2009-----c:\fm1\k2
ch-0003---01.05.2009-----c:\fm1\k3
ch-0004---08.05.2009-----c:\fm1\k2
ch-0005---08.05.2009-----c:\fm1\k4


Burdaki sorum şu ;

1- I sütunundaki kişilerin bugüne ait kaç kayıt var.
2- I sütunundaki kişilerin bu aya ait kaç kayıt var.
3- I sütunundaki kişilerin toplam kaç kayıt var.

Bu dediklerimi formülle yaptım ama bunu userform üzerinde textboxlara eklemek
istiyorum.

Yani her kullanıcı için üç tane textbox olacak,sonuçlar bu textboxlara yazacak.

Saygılar
 
Kod:
Sub I_Sutununda_Kisilerin_Bugune_Ait_Kac_Kaydi_var()
Tarih_Degeri = Format(Date, "00000")
For i = 2 To 7
    bul = Evaluate("=SumProduct((i1:i7 = " & Cells(i, 9).Address & ") * (h1:h7=" & Tarih_Degeri & " ))")
    Cells(i, "j") = bul
Next
End Sub
Kod:
Sub I_Sutununda_Kisilerin_Bu_Aya_Ait_Kac_Kaydi_var()
BuAy_Basi = Format(DateSerial(Year(Date), Month(Date), 1), "00000")
BuAy_Sonu = Format(DateSerial(Year(Date), Month(Date) + 1, 0), "00000")
For i = 2 To 7
    bul = Evaluate("=SumProduct((i1:i7 = " & Cells(i, 9).Address & ") * (h1:h7>=" & BuAy_Basi & " ) * (h1:h7<=" & BuAy_Sonu & "))")
    Cells(i, "k") = bul
Next
End Sub

Kod:
Sub I_Sutununda_Kisilerin_Kac_Kaydi_var()
For i = 2 To 7
    bul = WorksheetFunction.CountIf([I:I], Cells(i, "i"))
    Cells(i, "l") = bul
Next
End Sub
Not: Tablonuzu ikinci satırdan başlatın.
 
Kısmen oldu..

Kod:
Sub I_Sutununda_Kisilerin_Bugune_Ait_Kac_Kaydi_var()
Tarih_Degeri = Format(Date, "00000")
For i = 2 To 7
    bul = Evaluate("=SumProduct((i1:i7 = " & Cells(i, 9).Address & ") * (h1:h7=" & Tarih_Degeri & " ))")
    Cells(i, "j") = bul
Next
End Sub
Kod:
Sub I_Sutununda_Kisilerin_Bu_Aya_Ait_Kac_Kaydi_var()
BuAy_Basi = Format(DateSerial(Year(Date), Month(Date), 1), "00000")
BuAy_Sonu = Format(DateSerial(Year(Date), Month(Date) + 1, 0), "00000")
For i = 2 To 7
    bul = Evaluate("=SumProduct((i1:i7 = " & Cells(i, 9).Address & ") * (h1:h7>=" & BuAy_Basi & " ) * (h1:h7<=" & BuAy_Sonu & "))")
    Cells(i, "k") = bul
Next
End Sub

Kod:
Sub I_Sutununda_Kisilerin_Kac_Kaydi_var()
For i = 2 To 7
    bul = WorksheetFunction.CountIf([I:I], Cells(i, "i"))
    Cells(i, "l") = bul
Next
End Sub
Not: Tablonuzu ikinci satırdan başlatın.

Sadece son kod değer verdi,diğerleri sıfır değer veriyor.
 
Ayrıca ;

Ayrıca,hesaplanan değerleri,Sayfa1'deki hücrelere yazdırmak istiyorum.

Yani veriler sayfa8'de sonuçları sayfa1'de görmek istiyorum.

Saygılar
 
Teşekkürler

Teşekkür ederim.

yalnız aynı sayfada tamam ama sonuçları farkıl sayfaya nasıl yazdırırım.
 
Kod:
Sub I_Sutununda_Kisilerin_Bugune_Ait_Kac_Kaydi_var()
Tarih_Degeri = Format(Date, "00000")
For i = 2 To 9
    bul = Evaluate("=SumProduct((SAYFA3!i1:i7 = " & Sayfa1.Cells(i, 5).Address & ") * (SAYFA3!h1:h7=" & Tarih_Degeri & " ))")
    Sayfa1.Cells(i, "F") = bul
Next
End Sub
Sub I_Sutununda_Kisilerin_Bu_Aya_Ait_Kac_Kaydi_var()
BuAy_Basi = Format(DateSerial(Year(Date), Month(Date), 1), "00000")
BuAy_Sonu = Format(DateSerial(Year(Date), Month(Date) + 1, 0), "00000")
For i = 2 To 9
    bul = Evaluate("=SumProduct((SAYFA3!i1:i7 = " & Sayfa1.Cells(i, 5).Address & ") * (SAYFA3!h1:h7>=" & BuAy_Basi & " ) * (SAYFA3!h1:h7<=" & BuAy_Sonu & "))")
    Sayfa1.Cells(i, "G") = bul
Next
End Sub
Sub I_Sutununda_Kisilerin_Kac_Kaydi_var()
For i = 2 To 9
    bul = WorksheetFunction.CountIf(Sayfa3.[I:I], Sayfa3.Cells(i, "i"))
    Sayfa1.Cells(i, "H") = bul
Next
End Sub
 
bir sorun var,

Merhaba ;

Toplamı hesaplıyor ama gün ve aylık toplamı sıfır veriyor.
Acaba tarih formatıyla ilgili bir özel ayarmı gerekiyor.

Saygılar
 
1-İsimler aynı değil.
2-Bugüne ait tarih yok.
 
1-İsimler aynı değil.
2-Bugüne ait tarih yok.

İsimleri halletim ama sorun devam ediyor.

1-Genel toplamları doğru saymıyor.Örnek dosya gönderdim.
2-Sayfanın tamamında hesaplama yapması gerekiyor.Veriler 30000 satırdan
oluşuyor.

Ben biraz denedim ama olmadı.

Saygılar
 

Ekli dosyalar

tekrar

Alıntı:
hamitcan tarafından gönderildi
1-İsimler aynı değil.
2-Bugüne ait tarih yok.

İsimleri halletim ama sorun devam ediyor.

1-Genel toplamları doğru saymıyor.Örnek dosya gönderdim.
2-Sayfanın tamamında hesaplama yapması gerekiyor.Veriler 30000 satırdan
oluşuyor.

Ben biraz denedim ama olmadı.

Saygılar
 
Bu kadar fazla veriniz olduğunu baştan belirtseydiniz, size önerim Özet Tablo olurdu. Kod doğru çalışmayabilir çünkü belirtilen aralıkların sınırları küçük. Bu yüzden bu sınırları genişletmeniz gerekiyor.
Örneğin aşağıdaki önceki ile değiştirip deneyebilirsiniz. Tabii ki diğer kodları da değiştirmeniz gerekiyor.
Kod:
Sub I_Sutununda_Kisilerin_Bu_Aya_Ait_Kac_Kaydi_var()
BuAy_Basi = Format(DateSerial(Year(Date), Month(Date), 1), "00000")
BuAy_Sonu = Format(DateSerial(Year(Date), Month(Date) + 1, 0), "00000")
For i = 2 To 30000
    bul = Evaluate("=SumProduct((i1:i30000 = " & Cells(i, 9).Address & ") * (h1:h30000>=" & BuAy_Basi & " ) * (h1:h30000<=" & BuAy_Sonu & "))")
    Cells(i, "k") = bul
Next
End Sub
 
Geri
Üst