İki Saat Arası Zaman İçin Tanımlama Yapma

24/10/2019, 22:53

murat dikme

Merhaba Sayın hocalarım.

Ekli çalışmamda Sayın @ozanakkaya hocamın desteği ile bir yere kadar geldim. Fakat bir yerde takıldım.
Şöyle' ki çalışmamın içinde bulunan "srg_vardiya" da çalışma saatleri mevcut. Bu saat dilimlerinde;

08:00 ile 20:00 saatleri arasına "1"
20:00 ile 08:00 saatleri arasına "2" 
şeklinde görmek ve bunu "rapor1" de göstermek

forumda yaptığım aramalarda bazı konuları inceleyip uygulamaya çalıştım fakat sonuç alamadım.

İzlemem gereken yol hakkında bilgi verebilirseniz sevinirim saygılarımla.
24/10/2019, 23:35

murat dikme

Modül1 içinde ki kodu aşağıdaki gibi yaptım.

Kod:
    Dim Zaman As Variant, Msj As String
    Zaman = Time()
    If Zaman > "00:00:01" And Zaman < "08:00" Then Msj = "2"
    If Zaman >= "08:01" And Zaman < "15:00" Then Msj = "1"
    If Zaman >= "15:01" And Zaman < "20:00" Then Msj = "1"
    If Zaman >= "20:01" And Zaman < "00:00" Then Msj = "2"


srg_vardiya da alan da

Kod:
Msg: ([giris_saati] & [cikis_saati])

 olarak yazdım. aşağıdaki şekilde sonuç verdi. burada saat aralıklarını "1" "2" şeklinde yazdırmak için yapmam gereken hakkında bilgi verebilirseniz sevinirim.


Saygılarımla.



25/10/2019, 09:48

ozanakkaya

Merhaba, hangi saate göre işlem yapılacak? Tablorda giriş saati ve çıkış saati ayrı. İstediğiniz sonucu Excel olarak ekleyebilir misiniz?
25/10/2019, 10:35

murat dikme

Sayın Hocam kısaca yapmak istediğimi anlatan Excel örnek ektedir.
25/10/2019, 11:06

ozanakkaya

Modüldeki kodu aşağıdaki ile değiştir,

Public Function ssaat(bsl As Variant)
    If bsl > "00:00" And bsl < "08:00" Then ssaat = "2"
    If bsl >= "08:00" And bsl < "15:00" Then ssaat = "1"
    If bsl >= "15:00" And bsl < "20:00" Then ssaat = "1"
    If bsl >= "20:00" And bsl < "23:59" Then ssaat = "2"
End Function


Sorgudaki ilgili alanı da aşağıdaki ile değiştir.

Msg: ssaat([giris_saati])
25/10/2019, 12:04

murat dikme

Sayın Hocam teşekkür ederim evet istediğim sonucu verdi, emekleriniz için teşekkür ederim.