AccessTr.neT

Tam Versiyon: toplamı hızlandırmak
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Sayfalar: 1 2
Arkadaşlar,
ekli dosyada da göründüğü gibi sürekli formda verileri sorgulatmaktayım ve ürünleri toplamını formun altındaki metin kutularına =Topla(Nz(ToplaURUN1))aldırmaktayım. ile toplatmaktayım.

Ancak ürünlerin toplamını çok yavaş yapmakta (şuan burada çok hızlı gibi görünüyor ancak ben kendi çalışmama uyguladığımda 15-20 saniye sonra (bazen daha fazla bile oluyor) ) verileri toplayarak görünüyor.

Acaba bu toplamı hızladırmak için ne yapmalıyım?
VBA bölümünde yazılan bir kodla daha hızlı olabilir mi? veya başka bir şekilde

Saygılarımla

ikincisi yanlışlıkla oldu, kusura bakmayın birini kaldırmak istedim ancak nasıl yapılacağını bilemedim. özür dilerim.
Function Toplamlar()
Me.Metin9 = Nz(DSum("[ToplaURUN1]", "srgyeni"), 0)
Me.Metin11 = Nz(DSum("[ToplaURUN2]", "srgyeni"), 0)
Me.Metin13 = Nz(DSum("[ToplaURUN3]", "srgyeni"), 0)

'--------Buraya devam ediniz ----

Me.Metin27 = Nz(DSum("[ToplaURUN10]", "srgyeni"), 0)

End Function

Private Sub Komut140_Click()
Me.RecordSource = "srgyeni1"
Requery
Call Toplamlar
End Sub
Sayın Puletin; vermiş olduğunuz kodlar çok mükemmel olarak çalıştı ve toplamları hızlandırdı. Hocam çok teşekkür ederim.

Ancak, iki tarih arasındaki sorguda toplamlar çalışmamaktadır.

(iki tarih arası sorgusunda; alış tarihine göre sorgu "srgyeni" ve satış tarihine göre sorguda ise "srgyeni1" sorgusundan sorgu yaparak verileri forma getirmektedir.) bunun için ne yapmak gerekir.
Alış Tarihi butonuna

Private Sub Komut141_Click()
Me.RecordSource = "srgyeni"
Call AlisToplamlar
Requery
End Sub

Satış Tarihi butonuna

Private Sub Komut140_Click()
Me.RecordSource = "srgyeni1"
Call SatisToplamlar
Requery
End Sub

kodlarını ekle, aşağıdaki kodları vb sayfasına ekle

Function SatisToplamlar()
Me.Metin9 = Nz(DSum("[ToplaURUN1]", "srgyeni1"), 0)
Me.Metin11 = Nz(DSum("[ToplaURUN2]", "srgyeni1"), 0)
Me.Metin13 = Nz(DSum("[ToplaURUN3]", "srgyeni1"), 0)
Me.Metin15 = Nz(DSum("[ToplaURUN4]", "srgyeni1"), 0)
Me.Metin17 = Nz(DSum("[ToplaURUN5]", "srgyeni1"), 0)
Me.Metin19 = Nz(DSum("[ToplaURUN6]", "srgyeni1"), 0)
Me.Metin21 = Nz(DSum("[ToplaURUN7]", "srgyeni1"), 0)
Me.Metin23 = Nz(DSum("[ToplaURUN8]", "srgyeni1"), 0)
Me.Metin25 = Nz(DSum("[ToplaURUN9]", "srgyeni1"), 0)
Me.Metin27 = Nz(DSum("[ToplaURUN10]", "srgyeni1"), 0)
End Function
Function AlisToplamlar()
Me.Metin9 = Nz(DSum("[ToplaURUN1]", "srgyeni"), 0)
Me.Metin11 = Nz(DSum("[ToplaURUN2]", "srgyeni"), 0)
Me.Metin13 = Nz(DSum("[ToplaURUN3]", "srgyeni"), 0)
Me.Metin15 = Nz(DSum("[ToplaURUN4]", "srgyeni"), 0)
Me.Metin17 = Nz(DSum("[ToplaURUN5]", "srgyeni"), 0)
Me.Metin19 = Nz(DSum("[ToplaURUN6]", "srgyeni"), 0)
Me.Metin21 = Nz(DSum("[ToplaURUN7]", "srgyeni"), 0)
Me.Metin23 = Nz(DSum("[ToplaURUN8]", "srgyeni"), 0)
Me.Metin25 = Nz(DSum("[ToplaURUN9]", "srgyeni"), 0)
Me.Metin27 = Nz(DSum("[ToplaURUN10]", "srgyeni"), 0)
End Function
Ozan hocam, elinize sağlık verdiğiniz kodlar iki tarih arası sorgulamada mükemmel çalıştı, ancak bu seferde il sorgusu yapıldığında toplam almıyor,

örneğin 25.01.2013 ile 30.01.2013 tarihleri arasını sorguladığımda çok güzel topluyor, bu sorgudan sonra gelen üç ilden birini seçtiğim an toplam çalışmıyor

hocam birisi olsa biri olmuyor, her ikiside aynı anda olmayacak herhalde

hocam ilginizden dolayı teşekkür ederim.
Önce toplam aldırmayı sordunuz, cevap verildi. Sonradan iki tarih arası olayı, şimdi de il olayı.

1. mesajınızda üçünü belirtseydiniz hepsi olurdu.

İl seçtiğin açılan kutunun göncelleştirme sonrasında olayına aşağıdaki kodu yaz.

Private Sub ILI_AfterUpdate()
Call SatisToplamlar
Call AlisToplamlar
Me.Form.Requery
End Sub
Sayfalar: 1 2