導出排除的表_excel拆分實例:如何快速制作考勤統計分析表

b1a6fa7aaa5589784701eb2095eea7f6.png

編按:面對新的統計需求,很多人會一下變懵,不知如何辦。如果涉及的統計有一千多行數據,哭的心思都有了:什么時候才能下班喲!今天老菜鳥通過考勤統計分析表實例分享自己面對新統計需求的解決方法:簡化數據、找數據規律、做輔助列。任何復雜的統計,只要采取這樣的方法,大多幾分鐘就會搞定。

6cbed7665159fb9c192d1afbf21d2c77.png

考勤管理,是企業勞動紀律管理的最基本工作,公司領導要求人力資源每周按部門匯總一份考勤打卡情況通報,格式如下:

534558da823736b5b23a1f6d56e24eb1.png

通報表可以更為宏觀的看到考勤紀律的執行情況,是非常好的一個管理工具,但是負責制作報表的伙伴卻是異常煩惱。不為別的,就是不知道該如何下手,無奈之下,找到老菜鳥求助。

我們先來看看從考勤軟件導出的數據源吧:

0318d1064281e0721721bea0086b611b.png

整個表有二十多列,一千多行,如果僅靠手工統計,難度確實不小。如果是你接到這個任務時,會如何著手開始統計呢?

其實問題并沒有看上去那么復雜,關鍵是找到思路。思路決定出路,最終完成這個統計表并沒有用什么高大上的函數,也不是像有些伙伴猜的那樣,用VBA去解決,只是用了幾個常用的函數IF、COUNTIF、SUM和SUMIF就搞定了。是不是很想知道方法呢?

拿到數據,切忌盲目動手,而是首先整理數據。就當前通報表來說,數據源中對我們有用處的列并不多,只需要保留部門、工號、上下班的打卡結果這四列即可:

7316c39669124455ec1b22dbd21e3887.png

看上去清爽了很多吧?刪去了無用數據之后,就需要分析具體的統計思路,同時在數據源中尋找可以利用的規律。很容易看到,每個工號對應的打卡結果都是6行2列(12個單元格)的一個數據區域:

b8c0ee59d0456f8c3b036e58003bea0a.png

我們需要根據這12個單元格中的信息進行分類統計,按照要求分為正常和異常兩類。其中異常包括了:缺卡、請假、遲到和早退四種情況,只要沒有異常即可視為正常。

根據統計要求添加輔助列。輔助列的作用就是簡化問題的難度系數,在這個問題中我們可以這樣設置:

1c2d6fb5ed7753ecf1776ad9df34e2d3.png

在繼續往下前,需要理清楚這里統計的6個數據的關系。通報表是按人數而非次數統計的,因此可以得出這些結論:

◎同一工號一周內不管缺卡多少次,都算缺卡1人;

◎同一工號一周內不管請假多少次,都算請假1人;

◎遲到、早退規則同上;

◎同一工號,一周內不管缺卡+請假+遲到+早退有多少人,只要大于0,都算異常1人;

◎同一工號,一周內正常人數等于1-異常。

很多時候我們是不建議使用合并單元格的,因為合并單元格會帶來很多不方便。但是這個例子中,每6行數據(一個工號的數據)統計出一行結果,所以使用合并單元格會更方便。分別把E2:E7、F2:F7、G2:G7、H2:H7、I2:I7、J2:J7合并,然后在G2中輸入公式:

=IF(COUNTIF($C2:$D7,G$1)>0,1,0)

右拉填充公式,4項異常都進行了統計。

933dfff0c7d800bfae36b18970583893.png

從結果來看,這四項異常數據的統計結果是正確的。

這個公式的核心是COUNTIF,當區域中符合條件的個數大于0時,得到1,否則得到0。注意區域和條件的寫法,$C2:$D7鎖定了列,G$1鎖定了行,這樣公式在右拉和下拉的時候就不用再去修改了。

異常的統計,只要后面四項之和大于0就算異常1人,公式為:=IF(SUM(G2:J7)>0,1,0)。這個公式很簡單了,相信大家都能明白。

9cccd016e54e37a2e86b0b99da52e90a.png

到這一步,正常的統計更沒什么難度:

5cdcbf787c214d429b86f2b346f195d7.png

選中統計好的6個單元格,雙擊J2單元格的右下角,公式會自動向下填充至數據的最后一行,可以瀏覽一下結果:

3ccb2ca18937cf18cb0b1fd4548d5ebe.png

咦!早退和遲到的統計結果出現了錯誤,怎么解決?

有些朋友可能想到了用通配符,沒錯,就是通配符,不過不用修改公式,只需要將表頭修改一下就好了:

7dcf03920920aa3eeef32362fcc12e93.png

看明白了吧,在表頭“遲到”和“早退”的兩邊都加上*,統計結果就正確了。

數據源經過以上處理以后,要做出最終的統計表,已經完全不是問題了:

98ba9d64965dcaefc50cd947bf508c05.png

在職人數公式:=COUNTIF(數據源!A:A,匯總!B4)/6。至于為什么要除以6,不難理解。

正常打卡人數:=SUMIF(數據源!A:A,B4,數據源!E:E),SUMIF最基本的用法哦;

占比:=D4/C4

后面的幾列都是用SUMIF統計人數,用除法計算占比。

最后總結一下:

今天的通報表乍一看很棘手,平時工作可能也會遇到類似的情況。解決的辦法就是:首先排除無用的數據,然后是尋找數據規律,根據統計需要使用輔助列,最后通過一些基本的操作,例如累計、排序、合并,還有填充等,完成任務。

今天的分享重在體會問題的解決過程,涉及到的公式都非常簡單,相信大家在動手練習的過程中一定會有很多收獲的。

****部落窩教育-excel表格拆分技巧****

原創:老菜鳥/部落窩教育(未經同意,請勿轉載)

更多教程:部落窩教育(http://www.itblw.com)

微信公眾號:exceljiaocheng

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/529248.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/529248.shtml
英文地址,請注明出處:http://en.pswp.cn/news/529248.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

rds 如何學習數據庫_如何將本地數據庫遷移到云數據庫 RDS 上?

使用數據傳輸服務 ( DTS ) 將本地數據庫遷移到 阿里云的云數據庫 RDS ,可以實現應用不停服務的情況下,平滑完成數據庫的遷移工作。接下來我們將學習下如何使用 DTS 將本地數據庫遷移到 RDS 上。背景DTS 支持 SQL Server 數據結構遷移和全量遷移。DTS 支持…

arm ida 偽代碼 安卓 符號表_IDA 制作 sig文件 gdb 導入符號表

背景最近比賽遇到了一個題目, 32位靜態鏈接去符號了. 所以用IDA分析的時候很多libc的庫函數都無法識別, 就需要在 IDA 中引入 sig 文件. 從而可以識別諸如 read, write, malloc, free 這些庫函數. 雖然網上已經有很多制作好的sig文件, 但是還是應該學會自己制作sig文件以備不時…

lua如何打印行號_LUA教程錯誤信息和回跟蹤(Tracebacks)-34

雖然你可以使用任何類型的值作為錯誤信息,通常情況下,我們使用字符串來描述遇到的錯誤。如果遇到內部錯誤(比如對一個非table的值使用索引下標訪問)Lua將自己產生錯誤信息,否則Lua使用傳遞給error函數的參數作為錯誤信息。不管在什么情況下&a…

python 套接字 struck_Python socket粘包問題(最終解決辦法)

套接字:就是將傳輸層以下的協議封裝成子接口對于應用程序來說只需調用套接字的接口,寫出的程序自然是遵循tcp或udp協議的實現第一個功能個:實現:通過客戶端向服務端發送命令,調取windows下面的cmd窗口,將服…

python的lib文件夾_python遍歷文件夾os.path與pathlib

首先我們來一個需求,這個函數接受文件夾的名稱作為輸入參數,返回該文件夾中文件的路徑,以及其包含文件夾中文件的路徑。def print_dir_contents(sPath):import osfor sChild in os.listdir(sPath):sChildPath os.path.join(sPath,sChild)if …

python 數據字典用法_python數據字典的操作

一、什么是字典?字典是Python語言中唯一的映射類型。映射類型對象里哈希值(鍵,key)和指向的對象(值,value)是一對多的的關系,通常被認為是可變的哈希表。字典對象是可變的,它是一個容器類型,能存儲任意個數…

雙系統安裝deepin20_win10deepin15.10雙系統安裝教程

第二步:下載深度啟動盤制作工具深度啟動盤制作工具地址第三步:制作U盤啟動盤打開第二部下載的啟動盤制作工具,并準備一個u盤插入待裝系統的電腦,選擇鏡像文件后,下一步選擇磁盤并勾選格式化磁盤,點下一步開…

ubuntu19 安裝git_在Ubuntu 18.04上安裝Git

步驟1.首先,通過運行以下命令確保您的系統和apt包列表完全更新:apt-get update -yapt-get upgrade -y第2步。在Ubuntu 18.04上安裝Git。現在讓我們安裝git:apt install git您可以使用以下命令來檢查已安裝的git版本:$ git --versi…

mysql更新多條數據6_mysql語句:批量更新多條記錄的不同值

mysql更新語句很簡單,更新一條數據的某個字段,一般這樣寫:如果更新同一字段為同一個值,mysql也很簡單,修改下where即可:這里注意 ‘other_values’ 是一個逗號(,)分隔的字符串,如&am…

php mysql query 行數_如何在PHP中獲取MYSQL數據庫返回的數據的行數?

展開全部1. mysql_num_rows 可得到e69da5e887aa3231313335323631343130323136353331333337383861查詢記錄數<?php $con mysql_connect("localhost", "hello", "321");if (!$con){die(Could not connect: . mysql_error());}$db_selected …

mysql數據庫開發環境_MacOS下搭載開發環境之數據庫篇(Mysql + Navicat)

一、安裝Mysql1、官網下載mysql的tar包(提示&#xff1a;建議vpn環境下載)2、解壓并安裝tar包# 移動解壓后的二進制包到安裝目錄sudo mv mysql-5.7.19-osx10.9-x86_64 /usr/local/mysql# 更改 mysql 安裝目錄所屬用戶與用戶組cd /usr/localsudo chown -R root:wheel mysql# 初始…

mysql alter 唯一鍵_MySQL列屬性 之 唯一鍵

MySQL列屬性 之 唯一鍵唯一鍵唯一鍵&#xff1a;每張表往往有多個字段需要具有唯一性&#xff0c;數據不能重復&#xff0c;但是在每張表中&#xff0c;只能有一個主鍵&#xff0c;因此 唯一鍵就是用來解決表中多個字段需要具有唯一性的問題。例如身份證號碼應該每一行的記錄不…

如何在mysql中添加復選框_如何使用輸入和復選框更新mysql

如果我理解正確,您需要這樣做:mysql_query("UPDATE mp3SETaktif 1,baslik " . mysql_escape_string($_POST[baslik]) ."WHERE id $zuha");mysql_query("update mp3 set aktif 1,baslik $_POST[baslik]where id $_POST[id]")現在唯一的區別…

mysql 檢查列是否存在,如何檢查mysql表列是否存在?

How can I check if mysql table field even exists ?The column name is price and I need to see if it exists.Havent understood really how the EXISTS works...Any examples or ideas ?Thanks解決方案In PHP:$fields mysql_list_fields(database_name, table_name);$c…

mysql proxy yum_mysql 高可用架構 proxysql 之一 yum安裝

os:centos 7.4mysql: 5.7proxysql: 1.4.10ip 規劃如下&#xff1a;192.168.56.101 node1 (proxysql)192.168.56.102 node2 (mysql master)192.168.56.103 node3 (mysql slave)192.168.56.104 node4 (mysql slave)安裝mysql 5.7node2、node3、node4 安裝 mysql 5.7 software詳細…

wpf 使用位圖畫圖為什么斷斷續續_WPF的未來是微軟WinUi!

WPF(Windows Presentation Foundation)是微軟推出的基于Windows 的用戶界面框架&#xff0c;屬于.NET Framework 3.0的一部分。它提供了統一的編程模型、語言和框架&#xff0c;真正做到了分離界面設計人員與開發人員的工作&#xff1b;同時它提供了全新的多媒體交互用戶圖形界…

antd新增一行頁碼不正確_antd-Table@4.x對rowKey屬性的重構

時間&#xff1a;2020/04/26 &#xff0c;轉載請注明出處。寫在前面antd團隊于2020年2月發布了醞釀已久的antd4.0版本&#xff0c;對樣式的調整、部分組件邏輯的重構都進行了較大改動&#xff0c;本文針對Table的rowKey屬性重構作分析。由一個mistake帶來的思考在數據治理模塊的…

qt調用mysql調用了存儲過_Qt調用Server SQL中的存儲過程

Server SQL中的存儲過程如下&#xff1a;CREATE procedure PINSERTPCpcnum int,pcname varchar(50),pctype int,ipaddress varchar(50),port int,pcid int outputas--declare pcid intif exists (select * from COMPUTERTABLE where PcNum pcnum)set pcid -1elsebegininser…

pandas mysql index_Pandas從入門到精通(3)- Pandas多級索引MultiIndex

首先了解一下什么是多級索引&#xff0c;以及它的作用&#xff0c;為什么要有這個玩意。多級索引也稱為層次化索引(hierarchical indexing)&#xff0c;是指數據在一個軸上(行或者列)擁有多個(兩個以上)索引級別。之所以引入多級索引&#xff0c;在于它可以使用戶能以低維度形式…

tensorflow 啟動多個session_Tensorflow源碼解析7 -- TensorFlow分布式運行時

1 概述TensorFlow架構設計精巧&#xff0c;在后端運行時這一層&#xff0c;除了提供本地運行時外&#xff0c;還提供了分布式運行時。通過分布式訓練&#xff0c;在多臺機器上并行執行&#xff0c;大大提高了訓練速度。前端用戶通過session.run()啟動系統執行時&#xff0c;tar…