• DİKKAT

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

access saat işlevi

Katılım
17 Ağustos 2006
Mesajlar
131
Excel Vers. ve Dili
2003 türkçe
Arkadaşlar merhaba.

Şu işlevi excel de yapabiliyorum . Ama access te yapamadım. yardımcı olabilirmisiniz.

08.10.2007 08:30 (a1 hücresi)
09.10.2007 08:30 (b1 hücresi)

excel'de (c1 hücresinde) =mod(b1-a1;24) sonuç 24:00 yazıyor

accesste bu işlemi nasıl yapabiliriz??
 
Sayın sisozen,

DateDiff Fonksiyonu işinizi görür sanırım.

İyi çalışmalar
 
olmadı

datediff denedim olmadı atladığım bir şey var zannediyorum.

formların içinde, devamsızlık formunda

kalan süre= izin bitiş tarih ve saat- izin başlangıç tarih ve saat -ara dinlenme


sonuçta kalan sürede örneğin , 45:00 saat gibi bir şey yazmasını bekliyorum..
ama beceremedim
 
yardım..

bu konuda üstadlarımızın yardımlarını bekliyorum.
 
Sayın sisozen,

Aşağıdaki kodları formunuzun kod yazma sayfasına kopyalayıp deneyin.


Kod:
Private Sub Form_Current()
Me.Metin15 = Format(Me.IZIN_BASLANGIC_TARIHI - 1 - Me.IZIN_BITIS_TARIHI - Me.ARA_KESINTI, "Short Time")
End Sub
Private Sub Form_Load()
Me.Metin15 = Format(Me.IZIN_BASLANGIC_TARIHI - 1 - Me.IZIN_BITIS_TARIHI - Me.ARA_KESINTI, "Short Time")
End Sub

İyi çalışmalar
 
Merhaba;
Sayın Modalı da cevap vermiş ama sanırım o sadece 24 saate göre işlem yaptırmış.

Alttaki örneği inceleyiniz..
 
Son düzenleme:
sn. beab05 çok teşekkür ediyorum. gayet güzel.

tabi sn.modalı vakit ayırdığınız için teşekkür ediyorum.
 
sn beab05 kalan süreyi örneğin 45:10 saati nasıl ondalık sayıya çevirebiliriz?? (45,17 gibi).
Zannediyorum makroyu gizlemişsiniz, açıkçası çözemedim.
 
Merhaba;

Ben makro pek kullanmam. Siz formun kayıt kaynağını inceleyin yani alttaki kodu..İstediğinizdeki amaç nedir, daha sonra süreleri toplatmak mı? Alttaki format fonksiyonu içinde istediğiniz düzeltmeleri de yapabilirsiniz..

Kod:
SELECT DEVAMSIZLIK.SN, DEVAMSIZLIK.[ADI SOYADI], DEVAMSIZLIK.[IZIN LISTESI], DEVAMSIZLIK.[IZIN BASLANGIC TARIHI], DEVAMSIZLIK.[IZIN BITIS TARIHI], DEVAMSIZLIK.[ARA KESINTI], DEVAMSIZLIK.ACIKLAMA, Abs(DateDiff("n",[IZIN BITIS TARIHI],([IZIN BASLANGIC TARIHI]+[ARA KESINTI]))) AS gecendk, [gecendk]\60 & [COLOR="Red"]Format([gecendk] Mod 60,"\:00") [/COLOR]AS toplamsure
FROM DEVAMSIZLIK;
 
Son düzenleme:
sn beab05

Amacım daha sonra yapacağım toplama çıkarma işlemlerim de bu haneyi kullanabilmek

toplam süreyi değiştirerek (sizin kodları değiştirdim olmadı)
örneğin 45:30 çıktı bunu 45,50 olarak göstermeye çalıştım olmadı(yani ondalık haneye dönüştürebilmek)
 
Merhaba;

Kayıt kaynağına dikkat edin..Keyifli bir uğraştı..Örneği de ekliyorum..

Kod:
SELECT DEVAMSIZLIK.SN, DEVAMSIZLIK.[ADI SOYADI], DEVAMSIZLIK.[IZIN LISTESI], DEVAMSIZLIK.[IZIN BASLANGIC TARIHI], DEVAMSIZLIK.[IZIN BITIS TARIHI], DEVAMSIZLIK.[ARA KESINTI], DEVAMSIZLIK.ACIKLAMA, Abs(DateDiff("n",[IZIN BITIS TARIHI],([IZIN BASLANGIC TARIHI]+[ARA KESINTI]))) AS gecendk, [gecendk]\60 & Format([gecendk] Mod 60,"\:00") AS toplamsure, Left([toplamsure],InStr(1,[toplamsure],":")-1) AS toplamsure2, (Mid([toplamsure],InStr(2,[toplamsure],":")+1))*100/60 AS toplamsure3, [toplamsure2]+([toplamsure3]/100) AS topx
FROM DEVAMSIZLIK;
 
teşekkür ederim elinize sağlık...
 
Geri
Üst