iki tarih arası raporlama formunda verileri toplatmak

Katılım
21 Mayıs 2007
Mesajlar
169
Excel Vers. ve Dili
2000
1_)formda süzülen verileri toplatabilirmiyiz
2) başlangıç ve bitiş tarihlerinin girildiği combobox lara takvim uygulaması koyabilirmiyiz..
3) raporlama ,filtreleme ile ilgili elinde örnek çalışması olan varsa link verirse veya buraya gönderirse çok memnun olurum

yardımcı olacak arkadaşlara şimdiden teşekkür
 

Ekli dosyalar

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,239
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Dosyanız ekte.:cool:
Kod:
Private Sub Calendar1_Click()
TextBox1.Text = Format(Calendar1.Value, "dd.mm.yyyy")
Calendar1.Visible = False
End Sub

Private Sub Calendar2_Click()
Calendar2.Visible = False
TextBox2.Text = Format(Calendar2.Value, "dd.mm.yyyy")
End Sub

Private Sub CommandButton1_Click()
Dim baslangic_tar As Date, bitis_tar As Date, urun As String
Dim i As Long, k As Byte, a As Long, nakit As Double
If Not IsDate(TextBox1.Text) Then
    MsgBox "Başlangıç tarihi yanlış.Listeleme yapılmadı..", vbCritical, "UYARI"
    ComboBox1.SetFocus
    Exit Sub
End If
If Not IsDate(TextBox2.Text) Then
    MsgBox "Son tarih yanlış.Listeleme Yapılmadı..!!", vbCritical, "UYARI"
    ComboBox2.SetFocus
    Exit Sub
End If

ListBox1.RowSource = vbNullString
baslangic_tar = CDate(TextBox1.Text)
bitis_tar = CDate(TextBox2.Text)
ReDim myarr(1 To 6, 1 To 1)
For i = 2 To Cells(65536, "B").End(xlUp).Row
    If ComboBox3.Value = "" Then
        urun = Cells(i, "C").Value
        Else
        urun = ComboBox3.Value
    End If
    If Cells(i, "F").Value >= baslangic_tar And Cells(i, "F").Value <= bitis_tar And _
    urun = Cells(i, "C").Value Then
        a = a + 1
        ReDim Preserve myarr(1 To 6, 1 To a)
        For k = 1 To 6
            myarr(k, a) = Cells(i, k + 2)
        Next k
        nakit = nakit + Cells(i, "G").Value
    End If
Next i
If a > 0 Then ListBox1.Column = myarr
TextBox3.Text = Format(nakit, "#,##0.00")
Erase myarr
End Sub

Private Sub CommandButton2_Click()
Calendar1.Visible = True
End Sub

Private Sub CommandButton3_Click()
Calendar2.Visible = True
End Sub

Private Sub UserForm_Initialize()
Calendar1.Visible = False
Calendar2.Visible = False
Calendar1.Value = Date
Calendar2.Value = Date
TextBox1.Text = Format(Date, "dd.mm.yyyy")
TextBox2.Text = Format(Date, "dd.mm.yyyy")
ListBox1.ColumnCount = 7
ListBox1.ColumnHeads = False
ListBox1.ColumnWidths = "80;90;60,60,60,60"
ListBox1.RowSource = "sayfa1!B2:G" & Cells(65536, "B").End(3).Row
ListBox1.ListIndex = ListBox1.ListCount - 1
TextBox3.Text = Format(WorksheetFunction.Sum(Range("G2:G65536")), "#,##0.00")
For i = 1 To 1000
If Sheets("sayfa1").Cells(i, 2) = "" Then GoTo 10:
UserForm1.ComboBox3.AddItem (Sheets("sayfa1").Cells(i, 3))
10: Next
End Sub
 

Ekli dosyalar

Katılım
27 Aralık 2008
Mesajlar
131
Excel Vers. ve Dili
Excel 2007 & 2003 Türkçe
Sayın Evren Gizlen
Vermiş olduğunuz kodu kendi çalışmama uygulamak istiyorum ancak beceremedim. Yardımcı olmanızı rica ederim. Ekte verdiğim klasördeki gibi dosyalarım mevcut
Bu çalışma dosyalarından bilgi alacak bir rapor dosyası oluşturmak istiyorum. Bu raporda ilk tarih ve son tarihi verdiğimde ilgili yıla ait dosyadan bilgi alarak miktarları toplayacak ve ilgili yılın hanesine yazacak. Bu çalışmada, verilen ilk ve son tarihin yıl belirtmiyor olması gerekiyor. Yani örneğin 1 ocak ile 30 mart tarihleri arasındaki sipariş miktarlarını her yıla ait dosyadan arayarak ilgili haneye yazacak. Yani benim yazdığım tarihin yılı olmayacak her yıla ait bir dönemi tanımlayacak. Yardımlarınız için teşekkür ederim.
 

Ekli dosyalar

Katılım
27 Aralık 2008
Mesajlar
131
Excel Vers. ve Dili
Excel 2007 & 2003 Türkçe
İyi günler
Her yılın belli bir dönemi ile ilgili çalışmada yapılacak bir şeyler yok mu?
 
Katılım
27 Aralık 2008
Mesajlar
131
Excel Vers. ve Dili
Excel 2007 & 2003 Türkçe
Sayın Evren Gizlen
Vermiş olduğunuz kodu kendi çalışmama uygulamak istiyorum ancak beceremedim. Yardımcı olmanızı rica ederim. Ekte verdiğim klasördeki gibi dosyalarım mevcut
Bu çalışma dosyalarından bilgi alacak bir rapor dosyası oluşturmak istiyorum. Bu raporda ilk tarih ve son tarihi verdiğimde ilgili yıla ait dosyadan bilgi alarak miktarları toplayacak ve ilgili yılın hanesine yazacak. Bu çalışmada, verilen ilk ve son tarihin yıl belirtmiyor olması gerekiyor. Yani örneğin 1 ocak ile 30 mart tarihleri arasındaki sipariş miktarlarını her yıla ait dosyadan arayarak ilgili haneye yazacak. Yani benim yazdığım tarihin yılı olmayacak her yıla ait bir dönemi tanımlayacak. Yardımlarınız için teşekkür ederim.
Arkadaşlar tarihlerin değişkenliği nedeni ile yapılamadığını tahmin ediyorum. Bu nedenle bu dosyalarda değişikliik yaptım. Her dosyada "X" sütunu haftaları içeriyor. Rapor dosyasında ise tarih yerine haftaları tanımlayacağım. Bu haftalar arasındaki verileri toplatmak istiyorum. Yapmak istediğim ile ilgili rapor dosyasında gerekli tanımlamaları yaptım.

İstediğim işlemi fonksiyonlar ile oluşturdum. Ancak ancak bu işlemin yapılabilmesi için ilgili tüm dosyaların açık olması gerekiyor. 1990 dan bugüne olan verileri değerlendiriyorum. Her bir dosya min. 15 MB büyüklüğünde olduğundan çalışmak mevcut bilgisayarlarımızla çok zor oluyor.

Bu değişiklikten sonra değerlendirmenizi rica ediyorum.
 

Ekli dosyalar

Katılım
27 Aralık 2008
Mesajlar
131
Excel Vers. ve Dili
Excel 2007 & 2003 Türkçe
Arkadaşlar bu konuya bir çözüm bulacak yok mu?
Bırakın çözümü bir kişi açıp okumamış bile
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,482
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Rapor isimli dosyanızdaki A sütunundaki tarihlerin bir özelliği olacak mı? Tarih olarak 20.01.2009 yazmışsınız fakat yıllar bölümünde 2006-2007-2008 yılları var. Bu kısmı biraz daha açıklarmısınız.
 
Katılım
27 Aralık 2008
Mesajlar
131
Excel Vers. ve Dili
Excel 2007 & 2003 Türkçe
Öncelikle iyi akşamlar hocam,
A sütununda makronun çalıştığı tarih belirtilecek, bu konu değerlendirmelerin hangi tarihlerde yapıldığının belirlenmesi içindir. Makro ile değil el ile de yazılabilir.
A sütununda örneğin 23.01.2009 yazıyor ise 23.01.2009 tarihinde yıllar bölümünde tanımlanan yıllara ait değerlendirmenin yapıldığını anlayacağız. Bu liste her değerlendirmede alt alta satırlar halinde listelenecek.
İlginiz için teşekkür ederim.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,482
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Ekteki örnek dosyayı incelermisiniz.
 

Ekli dosyalar

Katılım
27 Aralık 2008
Mesajlar
131
Excel Vers. ve Dili
Excel 2007 & 2003 Türkçe
Cevap için teşekkür ediyorum.
Gördüğüm kadarı ile ilk ve son hafta dahil olarak toplamları veriyor.
Kriterleri sadece B3 (ilk hafta) ve C3 (son hafta) hücrelerinden alıyor. Çünkü toplamları sadece 3. satırda veriyor ve alt alta listelemiyor. Bu işlem yapılabilir mi?
Her şey için tekrar tekrar teşekkür ediyorum.
 
Katılım
27 Aralık 2008
Mesajlar
131
Excel Vers. ve Dili
Excel 2007 & 2003 Türkçe
Hocam bu rapor dosyası ile veri dosyalarının aynı klasör içindemi olması gerekiyor? Birde ben bu makroya başka dosyaları ilave etmek istersem 2. satırda belirttiğim yılların olduğu satıra dosya ismini yazmam yeterlimi?
Teşekkürler.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
43,482
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

1. Sorunuz ; A sütunu dolu olduğu sürece tüm verileri aktarır.

2. Sorunuz ; Hayır aynı klasörde olması gerekmiyor. Siz örnek dosyanızı bu şekilde eklediğiniz için çözümüde bu yönde önermiştim.

Eğer sorularınızı sorarken bu tür detayları belirtirseniz verilen cevaplar ile daha net olarak sonuca ulaşabilirsiniz.
 
Katılım
27 Aralık 2008
Mesajlar
131
Excel Vers. ve Dili
Excel 2007 & 2003 Türkçe
Yardımlarınız ve zaman ayırdığınız için çok teşekkür ederim.
 
Katılım
27 Aralık 2008
Mesajlar
131
Excel Vers. ve Dili
Excel 2007 & 2003 Türkçe
İyi günler,
Hazırlanmış olan kodlar örnek dosyada sorunsuz olarak çalışıyor. Ancak bu kodları gerçek dosyaya uygulamaya çalıştığımda "Dosya Bulunamamıştır" hatası veriyor.
Örnekteki 2006 dosyasının içine gerçek 2006 dosyasındaki verileri kopyaladım. Yine "Dosya Bulunamamıştır" hatası veriyor. Ancak her iki durumda da 2006.xls dosyasını ekrana açıyor. Yani aslında dosyayı buluyor ama bulamadığının ne olduğunu ben de bulamadım.
Koddan anladığım kadarı ile 2.satırdaki d3:f3 aralığını dosya isimleri kabul ederek bu dosyaları buluyır ve bulduğu dosyalardaki x:x sütunlarındaki istenen özelliklere uygun olan J:J sütunlarında toplam yapıyor.
Bu hatayı neden verdiği hakkında bir bilgisi olan var mı?
 
Katılım
27 Aralık 2008
Mesajlar
131
Excel Vers. ve Dili
Excel 2007 & 2003 Türkçe
İyi günler,
Toplam işlemini yaptığı J:J aralığında sayı dışındaki veriler olduğunda hata verdiğini gördüm. Bütün verilerin biçimini sayı olarak düzenledikten sonra hata giderildi. Çalışmalarında kullanacak arkadaşlar olursa bu konuya dikkat etmesi gerekecektir.
 
Üst