Merhaba,
Saatte bir defa kayıt alan bir programım var. Bu programın oluşturmuş olduğu veritabanına Access ile bağlanıyorum. Bir form oluşturdum ve bu form'dan iki tarih aralığı giriyorum. Yazmış olduğum sorgu, girilen iki tarih arasındaki değerleri yeni bir tabloya atıyor ve bu değerleri RAPOR'da günlük olarak gruplanmış olarak görüyorum.
RAPOR aşağıdaki gibidir;
25.11.2008
07:00:00 45346
08:00:00 32444
09:00:00 43544
10:00:00 65453
..
..
..
26.11.2008
07:00:00 65464
08:00:00 43523
09:00:00 65764
10:00:00 64564
..
..
..
Benim problemim şu;
Ben TARIH'in yazılı olduğu grubun altbilgisine 10:00:00 saatindeki değerle 09:00:00 saatindeki değerin farkını yazdırmak istiyorum.
Yardımlarınızı bekliyorum.
Rapordaki grup içinde sorgu yapmak
Sorununuz direkt olarak sorgudan
veya rapora kod yazılarak çözülebilir.
Ufak bir örnek yapıp gönderirseniz daha kolay yardımcı olabiliriz.
Tablo yaratmak, verileri girmekle zaman kaybetmemek için bize yardımcı olun bizde size yardımcı olalım.
veya rapora kod yazılarak çözülebilir.
Ufak bir örnek yapıp gönderirseniz daha kolay yardımcı olabiliriz.
Tablo yaratmak, verileri girmekle zaman kaybetmemek için bize yardımcı olun bizde size yardımcı olalım.
Bildiğini bilenin arkasından git, bildiğini bilmeyeni uyar, bilmediğini bilene öğret, bilmediğini bilmeyenden kaç.
Konfüçyüs
Konfüçyüs
seruz merhaba,
öncelikle ilgine teşekkür ediyorum. Access dosyasını gönderiyorum. Ben çalışmamı OFFICE 2007 kullanarak yaptım. 2000 olarak ta kaydediyorum. Umarım problem olmaz.
İyi Çalışmalar,
öncelikle ilgine teşekkür ediyorum. Access dosyasını gönderiyorum. Ben çalışmamı OFFICE 2007 kullanarak yaptım. 2000 olarak ta kaydediyorum. Umarım problem olmaz.
İyi Çalışmalar,
1.Çözüm olarak,
Fark adında bir text box ekledim ve alttaki kodları yazdım.
2. Çözüm olarak Crosstab - Çapraz sorgu ile
tüm günü detaylı olarak görebileceğiniz bir örnek ekledim ve 3 farklı şeklini yaptım.
Ayrıca sorguda kod ile de çözülebilirdi ancak fırsatım olmadı ve
bunlar yeterli sanırım.
Fark adında bir text box ekledim ve alttaki kodları yazdım.
Kod:
Option Compare Database
Option Explicit
Dim OncekiDeger
Private Sub Ayrıntı_Print(Cancel As Integer, PrintCount As Integer)
If IsNull(OncekiDeger) Or IsEmpty(OncekiDeger) Or OncekiDeger = 0 Then
Me.FARK = 0
Else
Me.FARK = Me.EA1 - OncekiDeger
End If
OncekiDeger = Me.EA1
End Sub
tüm günü detaylı olarak görebileceğiniz bir örnek ekledim ve 3 farklı şeklini yaptım.
Ayrıca sorguda kod ile de çözülebilirdi ancak fırsatım olmadı ve
bunlar yeterli sanırım.
Bildiğini bilenin arkasından git, bildiğini bilmeyeni uyar, bilmediğini bilene öğret, bilmediğini bilmeyenden kaç.
Konfüçyüs
Konfüçyüs
Sorgu ile de farkı hesaplamak için gerekli olan
önceki değer böyle bulunabilir
Ama rapordaki kod performans açısından daha iyi bir çözüm gibi.
önceki değer böyle bulunabilir
Kod:
SELECT FLTIME, EA1, (SELECT Top 1 EA1 FROM ENERJI1 Where FLTIME<Srz.FLTIME Order By FLTIME DESC) AS OncekiDeger
FROM ENERJI1 AS Srz
ORDER BY Srz.FLTIME;
Bildiğini bilenin arkasından git, bildiğini bilmeyeni uyar, bilmediğini bilene öğret, bilmediğini bilmeyenden kaç.
Konfüçyüs
Konfüçyüs
Seruz merhaba,
Yardımlarınıziçin teşekkür ederim. Çözüm-1 olarak göndermiş olduğunuz program benim işimi görüyor. Ancak bu kod Access 2003'te çalışmasına rağmen Access 2007'de çalışmıyor. Bu konuda da yardımınızı bekliyorum.
İyi Çalışmalar,
Yardımlarınıziçin teşekkür ederim. Çözüm-1 olarak göndermiş olduğunuz program benim işimi görüyor. Ancak bu kod Access 2003'te çalışmasına rağmen Access 2007'de çalışmıyor. Bu konuda da yardımınızı bekliyorum.
İyi Çalışmalar,
Konuyu Okuyanlar: 2 Ziyaretçi