亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于數(shù)據(jù)處理技術(shù)的考勤加班時(shí)間統(tǒng)計(jì)

        2018-09-21 14:21:36李鼎文徐昌欣郭偉
        關(guān)鍵詞:數(shù)據(jù)處理

        李鼎文 徐昌欣 郭偉

        中圖分類號(hào):C37 文獻(xiàn)標(biāo)識(shí):A 文章編號(hào):1674-1145(2018)8-203-04

        摘要 本文介紹了某公司考勤加班統(tǒng)計(jì)的規(guī)則、原始考勤數(shù)據(jù)進(jìn)行預(yù)先數(shù)據(jù)處理的方法,文中依據(jù)考勤規(guī)則進(jìn)行了統(tǒng)計(jì),介紹了相應(yīng)的統(tǒng)計(jì)代碼,并通過Ⅶ編寫的程序?qū)崿F(xiàn)自動(dòng)統(tǒng)計(jì),最后文章介紹了應(yīng)用效果。

        關(guān)鍵詞 考勤管理 加班時(shí)間統(tǒng)計(jì) 數(shù)據(jù)處理 VB

        目前,企業(yè)在進(jìn)行考勤管理的過程中,一般采用了考勤機(jī)來對(duì)考勤進(jìn)行記錄,并進(jìn)行一系列考勤情況統(tǒng)計(jì),比如遲到早退人員統(tǒng)計(jì)、曠工人數(shù)統(tǒng)計(jì)、請(qǐng)假情況統(tǒng)計(jì)、加班情況統(tǒng)計(jì)等,其中加班情況統(tǒng)計(jì)是經(jīng)常進(jìn)行的一種。在有的中小企業(yè)中,只有考勤機(jī)記錄的初始記錄,沒有進(jìn)一步的考勤統(tǒng)計(jì)分析軟件,怎樣利用考勤初始記錄,進(jìn)行考勤加班統(tǒng)計(jì),是中小企業(yè)常常面對(duì)的問題。本人在工作中,利用VB編寫小程序,通過對(duì)考勤初始數(shù)據(jù)的進(jìn)行預(yù)處理,然后對(duì)加班情況進(jìn)行統(tǒng)計(jì),取代了手工進(jìn)行考勤加班計(jì)算的狀況,減輕了考勤統(tǒng)計(jì)人員的工作量,并提高了工作的準(zhǔn)確性。本人將考勤加班統(tǒng)計(jì)的方法、部分源碼及計(jì)算過程整理出來,以饗讀者。

        一、考勤加班統(tǒng)計(jì)規(guī)則的設(shè)定

        為方便進(jìn)行考勤管理,必須首先設(shè)定考勤規(guī)則,讓員工有考勤依據(jù),方能準(zhǔn)確的打卡,知道自己的考勤情況。某企業(yè)中,對(duì)考勤加班統(tǒng)計(jì)規(guī)則設(shè)計(jì)如下:

        1.平時(shí)上班時(shí)間,每天5點(diǎn)半以后算下班,6點(diǎn)之后刷卡算加班。

        2.節(jié)假日全天可算加班。

        3.平時(shí)上班時(shí)間,加班超過2.5個(gè)小時(shí)以上,給予一次餐補(bǔ)。

        4.節(jié)假日加班,一次加班時(shí)間超過3個(gè)小時(shí),給予一次餐補(bǔ),7小時(shí)以上,兩次餐補(bǔ)封頂。二、考勤原始數(shù)據(jù)處理某企業(yè)中,考勤刷卡的原始數(shù)據(jù)如下圖所示,該數(shù)據(jù)是由考勤機(jī)的記錄導(dǎo)出的excel數(shù)據(jù)。

        原始數(shù)據(jù)包括部門、姓名、考勤號(hào)、刷卡時(shí)間、記錄狀態(tài)、機(jī)器號(hào)等六個(gè)數(shù)據(jù)項(xiàng)。在進(jìn)行考勤加班統(tǒng)計(jì)之前,需要對(duì)原始數(shù)據(jù)進(jìn)行三個(gè)方面的預(yù)處理:1.去掉一次刷卡記錄下來的多次刷卡記錄。2.標(biāo)注是正常上班時(shí)間還是節(jié)假日。3.取出正常上班時(shí)間超出18:00的刷卡數(shù)據(jù),做為加班統(tǒng)計(jì)的依據(jù)。

        1.去掉多次刷卡數(shù)據(jù),將刷卡數(shù)據(jù)間隔小于5分鐘的數(shù)據(jù)去掉,即原始數(shù)據(jù)的間隔小于0.08的,刪除后面的數(shù)據(jù)。代碼如下:

        For i=1 To totalnum-1 Step 1

        If sheet ds.Cells(i,3)=sheet ds.Cells(i+1,3)And Year(sheet ds.Cells(i,4))=Year(sheet ds.Cells(i+1,4))And Month(sheet ds.Cells(i,4))=Month(sheet ds.Cells(i+1,4))And Day(sheet ds.Cells(i,4))=Day(sheet ds.Cells(i+1,4))And Round((Hour(sheet ds.Cells(i+1,4))-Hour(sheet ds.Cells(i,4))+(Minute(sheet ds.Cells(i+1,4))-Minute(sheet ds.Cells(i,4)))/6f), 2)<=0.08 Then

        p=p+1

        Else

        sheet_ds1.Cells(i-p,1)=sheet ds.Cells(i,2)

        sheet_ds1.Cells(i-p,2)=sheet ds.Cells(i,4)

        sheet_ds1.Cells(i-p,3)=sheet ds.Cells(i,5)

        shret_ds1.Cells(i-p,4)=sheet ds,Cells(i,3)

        p=0

        2.對(duì)原始數(shù)據(jù)標(biāo)注是平時(shí)上班時(shí)間還是節(jié)假日。首先通過人機(jī)界面確定哪些是休息日,再逐一標(biāo)注,如果是平時(shí)刷卡數(shù)據(jù)第五列標(biāo)注為0,如果是節(jié)假日刷卡數(shù)據(jù)第五列標(biāo)注為1。代碼如下:

        Do While sheet so.Cells(totalnum,3) 統(tǒng)計(jì)記錄條數(shù)

        totalnum=totalnum+1

        Loop

        totalnum=totalnum+1

        For i=2 To tatalnum Step 1

        sheet ds.Cells(i-1,1)=sheet so.Cells(i,1)

        sheet ds.Cers(i-1,2)=sheet so.Cells(i,2)

        sheet ds.Cells(i-1,3)=sheet so.Cells(i,3)

        sleet ds.Cells(i-1,4)=sheet so.Cells(i,4)

        sheet ds.Cells(i-1,5)=0

        Forj=1 Tok-1Step 2

        If Day(sheet so.Cells(i,4)=a(j)Then

        sheet ds.Cells(i-1,5)=1

        End If

        Next j

        Next i

        3.取出正常上班時(shí)間超出18:00的刷卡數(shù)據(jù)。

        If sheet_ds1. Cells(i,3)=0 And Hour(sheet_ds1.Cells(i,2))>=18Then '平時(shí)刷卡時(shí)間過了18:00的記錄

        sheet ds2.Cells(i-p,1)=sbeet_ds1.Cells(i,1)

        sheet ds2.Cells(i-p,2)=sheet_ds1.Cells(i,2)

        sheet ds2.Cells(i-p,3)=sheet_ds1.Cells(i,3)

        sheet ds2.Cells(i-p,7)=sheet_ds1.Celis(i,4)

        totalnum1=totalnum1+1

        Else

        p=p+1

        End If

        End If

        Next i

        三、依據(jù)統(tǒng)計(jì)規(guī)則對(duì)預(yù)處理后的數(shù)據(jù)進(jìn)行計(jì)算

        1.以考勤號(hào)為關(guān)鍵字,統(tǒng)計(jì)當(dāng)日休息時(shí)段刷卡的次數(shù),及將刷卡次數(shù)累加計(jì)入第四列。

        For i=1 To totalnum1 Step 1 '計(jì)算打卡記錄數(shù)

        If(Day(sheet_ds 2.Cells(i,2)))=(Day(sheet_ds2.Cells(i+1,2)))And(Manth(sheet_ds2.Cells,2)))=(Month(sheet_ds2.Cells(i+1,2)))And(Year(sheet_ds2.Cells(i,2)))=(Year(sheet_ds2.Cells(i+1,2)))And(sheet_ds2.Cells(i,7)=sheet_ds2.Cells(i+1,7))Then

        b=b+1

        Else

        sheet ds2.Cells(i,4)=b

        b=1

        End If

        Next i

        2.依據(jù)刷卡次數(shù)區(qū)分奇數(shù)次和偶數(shù)次刷卡,并按平時(shí)加班及休息日加班分別對(duì)加班時(shí)間進(jìn)行統(tǒng)計(jì),并計(jì)算餐補(bǔ)。這一共有三種情況:

        (1)正常上班時(shí)間、休假時(shí)間的偶數(shù)次打卡,此時(shí)計(jì)算兩次刷卡記錄之差即為加班時(shí)間。然后分別按照正常上班時(shí)間和休假時(shí)間的餐補(bǔ)計(jì)算規(guī)則,統(tǒng)計(jì)餐補(bǔ)數(shù)量即可。即正常上班時(shí)加班時(shí)間超過2.5小時(shí),給予一次餐補(bǔ),休假時(shí)間一次加班時(shí)間超過3小時(shí),給予一次餐補(bǔ),7小時(shí)以上給予兩次餐補(bǔ),將餐補(bǔ)結(jié)果計(jì)入第6列。

        For i=1 To totalnum1 Step 1 '統(tǒng)計(jì)加班時(shí)間If sheet_ds2.Cells(i,4)And(sheet_ds2.Cells(i,4)Mod2=0)Then '正常上班時(shí)間、休假時(shí)間,偶數(shù)次打卡

        sheet ds2.Cells(i,5)=0

        sheet ds2.Cells(i,6)=0

        For j=0 To sheet ds2.Cells(i,4)-2 Step 2

        sheet_ds2.Cells(i,5)=Round((sheet_ds2.Cells(i,5)+Hour(sheet_ds2.Cells(i-j,2))-Hour(sheet_ds2.Cells(i-j-1,2))+(Minute(sheet_ds2.Cells(i-j,2))-Minute(sheet_ds2.Cells(i-j-1,2)))/60),2)

        If Round((HOUr(sheet_ds2.Cells(i-j,2))-Hoor(sheet_ds2.Cells(i-j-1,2))+(Minute(sheet_ds2.Cells(i-j,2))-Minute(sheet_ds2.Cells(i-j-1,2)))/60),2)>2.5 Andsheet ds2.Cells(i,3)=0 Then '統(tǒng)計(jì)餐補(bǔ)

        sheet_ds2.Cells(i,6)=i

        Else

        If Round((Hour(sheet_ds2.Cells(i-j.2))-Hour(sheet_ds2.Cells(i-j-1,2))+(Minute(sheet_ds2.Cells(i-j,2))-Minute(sheet_ds2.Cells(i-j-1,2)))/60),2)>=7 Andsheet_ds2.Cells(i,3)=1 Then

        sheet_ds2.Cells(i,6)=2

        End If

        If Round((Hour(sheet_ds2.Cells(i-j,2))-Hour(sheet_ds2.Cells(i-j-1,2))+(Minute(sheet_ds2.Cells(i-j,2))-Minute(sheet_ds2.Cells(i-j-1,2)))/60), 2)>3 AndRound((Hour(sheet_ds2.Cells(i-j, 2))-Hour(sheet_ds2.Cells(i-j-1,2))+(Minute(sheet_ds2.Cells(i-j,2))-Minnee(sheet_ds2.Cells(i-j-1, 2)))/60),2)<7 Andsheet_ds2.Cells(i,3)=1 And sheet_ds2.Cells(i,6)<2 Then'統(tǒng)計(jì)餐補(bǔ)

        sheet_ds2.Cells(i,6)=sheet_ds2.Cells(i,6)+1

        End If'

        End If.

        Next j

        (2)正常上班時(shí)間奇數(shù)次打卡,此時(shí)計(jì)算最后一次刷卡與17:30之差即為加班時(shí)間,然后依據(jù)加班時(shí)間和餐補(bǔ)規(guī)則計(jì)算餐補(bǔ)。

        If sheet_ds2.Cells(i,4)And sheet_ds2.Cells(i,3)=0 And(sheet_ds2.Cell(i,4)Mod2=1)Then' 正常上班時(shí)間,奇數(shù)次打卡

        sheet_ds2.Cells(i,5)=0

        sheet_ds2.Cells(i,6)=0

        sheet_ds2.Cells(i,5)=Round/(Hour(sheet_ds2.Cells(i-sheet_ds2.Cells(i,4)+1,2))-17+(Minute(sheet_ds2.Cells(i-sheet_ds2.Cells(i,4)+1,2))-30)/60),2)

        If sheet_ds2.Cells(i,5)>2.5 Then'統(tǒng)計(jì)餐補(bǔ)

        sheet_ds2.Cells(i,6)=1

        End If

        If shell_ds2.Cells(i,4)>1 Then

        For j=0 To sheet_ds2.Cells(i,4)-3 Step 2

        sheet_ds2.Cells(i,5)=Round((sheet_ds2.Cells(i,5)+Hour(sheet_ds2.Cells(i-j,2))-Hour(sheet-ds2.Cells(i-j-1,2))+(Minute(sheet_ds2.Cells(i-j,2))-Minute(sheet_ds2.Cells(i-j-1, 2)))/60),2)

        If Round((Hour(sheet_ds2.Cells(i-j,2))-Hour(sheet_ds2.Cells(i-j-1,2))+(Minute(sheet_ds2.Cells(i-j,2))-Minute(sheet_ds2.Cells(i-j-1,2)))/60),2)>2.5 Then統(tǒng)計(jì)餐補(bǔ)

        sheet_ds2.Cells(i,6)=1

        End If

        Next j

        End If

        End If

        (3)休假時(shí)間奇數(shù)次打卡,此時(shí)計(jì)算第一次刷卡與最后一次刷卡之差即為加班時(shí)間,然后依據(jù)加班時(shí)間和餐補(bǔ)規(guī)則計(jì)算餐補(bǔ)即可。

        If sheet_ds2.Cells(i,4)And sheet_ds2.Cells(i,3)=1 And(sheet_ds2.Cells(i,4)Mod 2=1)Then '休假時(shí)間,奇數(shù)次打卡

        sheet_ds2.Cells(i,6)=0

        sheet_ds2.Cells(i,5)=Round((Hour(sheet_ds2.Cells(i,2))-Hour(sheet_ds2.Cells(i-sheet_ds2.Cells(i,4)+1,2))+(Minute)sheet_ds2.Cells(i,2))-Minute(sheet_ds2.Cells(i-sheet_ds2.Cells(i,4)+1,2)))/60),2)

        If sheet_ds2.Cells(i,5)>3 And sheet_ds2.Cells(i,5)<7 And sheet_ds2.Cells(i,6)<2 Then '統(tǒng)計(jì)餐補(bǔ)

        sheet_ds2.Cells(i,6)=sheet_ds2.Cells(i,6)+1

        Else

        If sheet_da2.Cells(i,5)>=7 Then

        sheet_ds2.Cells(i,6)=2

        End If

        End If

        End If

        End If

        Next i

        四、依據(jù)得到的結(jié)果,制作報(bào)表計(jì)算每日加班時(shí)間和當(dāng)月加班總時(shí)間,及每日餐補(bǔ)數(shù)和該月餐補(bǔ)數(shù)。程序如下:

        pk=2

        For i=1 To totalnum1 Step 1'制作報(bào)表

        If sheet ds2.Cells(i,4)Then

        sheet_ds3.Cells(pk,1)=sheet_ds2.Cells(i,1)

        sheet_ds3.Cells(pk,2)=sheet_ds2.Cells(i,7)

        sheet_ds3.Cells(pk,3)=DateSerial(Year(sheet_ds2.Cells(i,2)),Month(sheet_ds2.Cells(i,2)),Day(sheet_ds2.Cells(i,2)))

        sheet_ds3.Cells(pk,4)=sheet-ds2.Cells(i,5)

        sheet_ds3.Cells(pk,5)=sheet_ds2.Cells(i,6)

        pk=pk+1

        End If

        Next i

        totaladd=sheet_ds3.Cells(2,4)

        totalcount=sheet_ds3.Cells(2,5)

        For i=2 To pk+1 Step1

        if(sheet_ds3.Celts(i,2)=sheet_ds3.Cells(i+1,2))Then

        totladd=tataladd+sheet_ds3.cells(i+1,4)

        totalcount=totalcount+sheet_ds3.Cells(i+1,5)

        Else

        sheet_ds3.Cells(i,6)=totaladd

        sheet_ds3.Cells(i,7)=totalcount

        totaladd=sheet_ds3.Cells(i+1,4)

        totalcount=sheet_ds3.Cells(i,1,5)

        End If

        Next i

        End If

        五、運(yùn)行效果

        (一)程序界面

        通過人工輸入休息日,來區(qū)分正常上班時(shí)間和節(jié)假日日期,點(diǎn)擊加班統(tǒng)計(jì)即可進(jìn)行統(tǒng)計(jì)計(jì)算。

        1.統(tǒng)計(jì)過程。

        通過不斷建立Worksheet,逐層遞進(jìn)得進(jìn)行計(jì)算,最后得到最后的統(tǒng)計(jì)結(jié)果。

        (1)標(biāo)注是平時(shí)工作日還是節(jié)假日。

        (2)去掉時(shí)間間隔小于5分鐘的數(shù)據(jù)并取出正常工作日18:00以后的數(shù)據(jù)。

        (3)計(jì)算當(dāng)日刷卡次數(shù),并統(tǒng)計(jì)加班時(shí)間及餐補(bǔ)。

        (4)最終統(tǒng)計(jì)結(jié)果。

        六、應(yīng)用效果

        該統(tǒng)計(jì)軟件已經(jīng)在某公司穩(wěn)定運(yùn)行了一段時(shí)間,減輕了考勤統(tǒng)計(jì)人員的工作量,提高了統(tǒng)計(jì)的準(zhǔn)確性,保障了公司的考勤管理工作的穩(wěn)定運(yùn)行,取得了較好的管理效能。

        參考文獻(xiàn):

        [1]唐勇.RFID身份識(shí)別考勤系統(tǒng)設(shè)計(jì)[J].2013(6).

        [2]劉宇.基于WEB的企業(yè)定制考勤系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].2013(11).

        [3]楊洋.基于-NET的人事考勤管理系統(tǒng)的設(shè)計(jì)與開發(fā)[J].2011(6).

        猜你喜歡
        數(shù)據(jù)處理
        認(rèn)知診斷缺失數(shù)據(jù)處理方法的比較:零替換、多重插補(bǔ)與極大似然估計(jì)法*
        ILWT-EEMD數(shù)據(jù)處理的ELM滾動(dòng)軸承故障診斷
        MATLAB在化學(xué)工程與工藝實(shí)驗(yàn)數(shù)據(jù)處理中的應(yīng)用
        Matlab在密立根油滴實(shí)驗(yàn)數(shù)據(jù)處理中的應(yīng)用
        基于POS AV610與PPP的車輛導(dǎo)航數(shù)據(jù)處理
        依托陸態(tài)網(wǎng)的GNSS遠(yuǎn)程數(shù)據(jù)處理軟件開發(fā)
        日韩精品人妻系列无码专区免费| 老妇肥熟凸凹丰满刺激| 成人免费在线亚洲视频| 久久精品国产亚洲av热九| 最新国产日韩AV线| 真人做爰片免费观看播放| 国产免费一区二区三区精品视频| 亚洲av影片一区二区三区| 国产曰批免费视频播放免费s| 人人妻人人澡人人爽欧美一区九九| 精品亚洲第一区二区三区 | 中文字幕亚洲区第一页| 国产麻豆精品精东影业av网站| 一本到亚洲av日韩av在线天堂 | 亚洲国产精品成人久久久| 扒开女性毛茸茸的视频| 亚洲欧洲美洲无码精品va| 久久综合第一页无码| 成在线人av免费无码高潮喷水 | 人妻精品久久无码区| 热综合一本伊人久久精品| 久久天堂av色综合| 乱人伦中文字幕成人网站在线| 国产精品久久久久9999小说| 日韩a级精品一区二区| 亚洲码专区亚洲码专区| 日本精品久久性大片日本| 伊人精品无码AV一区二区三区| 爱情岛论坛亚洲品质自拍hd| 成 人片 黄 色 大 片| 丝袜av乱码字幕三级人妻| 亚洲嫩模一区二区三区视频| 97色在线视频| 欧美日韩视频无码一区二区三 | 日本中文字幕乱码中文乱码| 国产一级黄色录像| 国产涩涩视频在线观看| 成人内射国产免费观看| 成人免费av色资源日日| 一区两区三区视频在线观看| 久久久久久久尹人综合网亚洲|