Bu yazıda, aracılar için vardiya uyum süresini hesaplamak için özel bir işlev veya UDF oluşturacağız.
Bu örnek için ham veriler, gün için her bir aracının oturum açma ve oturum kapatma süresi ile birlikte aracı kimliğinden oluşur. Ayrıca vardiya başlangıç ve vardiya bitiş zamanını da tanımladık.
Vardiya uyum süresini hesaplamak için özel "TimeInterval" işlevini kullandık. Bu fonksiyon girdi olarak dört parametre alır.
İşlev TimeInterval(Oturum Açma, Oturumu Kapat, ShiftStartTime, ShiftEndTime)
Vardiya başlangıç zamanı C7 hücresinde tanımlanır ve vardiya bitiş zamanı C8 hücresinde tanımlanır.
Mantıksal açıklama
Vardiya uyum süresini hesaplamak için oturum açma zamanını vardiya başlangıç zamanı olarak değiştirdik. Giriş saati vardiya başlama saatinden erken ise vardiya başlama saati giriş saati olarak kabul edilecektir. Çıkış zamanı vardiya bitiş zamanından daha geç ise, vardiya bitiş zamanı çıkış zamanı olarak kabul edilecektir. Şimdi, giriş ve çıkış zamanı arasındaki fark, vardiyaya uyum süresini verecektir.
Lütfen kod için aşağıdan takip edin
Seçenek Explicit Function TimeInterval(Login As Double, Logout As Double, _ ShiftStartTime As Double, ShiftEndTime As Double) 'Oturum açma zamanının oturum kapatma zamanından az olup olmadığını kontrol etme Eğer Login > Logout O zaman TimeInterval = "Oturum açma zamanı oturum kapatma zamanından az olmalı" Çıkış Fonksiyon Bitiş 'Eğer oturum açma vardiya başlangıç zamanından daha az ise, oturum açma zamanını vardiya başlangıç zamanına değiştirmek Eğer Oturum Açma ShiftEndTime O zaman Oturumu Kapat = ShiftEndTime TimeInterval = Oturumu Kapat - Oturum Açma Bitiş Fonksiyonu
Bu blogu beğendiyseniz, Facebook'ta arkadaşlarınızla paylaşın. Ayrıca bizi Twitter ve Facebook'ta da takip edebilirsiniz.
Sizden haber almayı çok isteriz, işimizi nasıl geliştirebileceğimizi ve sizin için nasıl daha iyi hale getirebileceğimizi bize bildirin. E-posta sitesinde bize yazın