日常統(tǒng)計匯總本是一件簡單的事情,但是總有人會讓你體會到什么叫“化簡為繁”!
日常加上按小時有飯補,于是就做了一張統(tǒng)計表,方便每個月底統(tǒng)計一下每個人需要補多少?
本文涉及函數(shù)如下:
TEXTJOIN函數(shù) -WPS可用
SUBSTITUTE函數(shù) - 主流版本
REPT函數(shù) - 主流版本
MID函數(shù) - 主流版本
TRIM函數(shù) - 主流版本
UNIQUE函數(shù) -O365新增
SUMIFS函數(shù) - 主流版本
你覺得應該是這樣的
但是最后給你的其實是這樣的
而你要統(tǒng)計的是這樣的
你們可能最想學的是如何快速處理雜亂日期,但是這不是我們本次的重點,我們先撇開日期亂的問題(文末補充處理方法),簡單說一下如何把上面多個姓名轉(zhuǎn)成下面這種標準的二維表!
我們結(jié)束兩種方法,一種是純技巧操作,一種是函數(shù)方法!
首先我們還是介紹一種最簡單的,技巧操作法
▼超詳細動畫演示-0代碼純操作!
1、鼠標點擊數(shù)據(jù)區(qū)域的任意位置,點擊【數(shù)據(jù)】-【自工作表】-確定
(推薦2016及以上版本,2010以下版本及WPS等沒有Power Query!)
2、選擇加班人字段,點擊【轉(zhuǎn)換】-【拆分列】-【高級選項】-【行】
確定,這樣我們就可以把內(nèi)容按照固定的分隔符拆分到每一行,如果自動推測的分隔符不對,也可以自己填寫!3、選擇餐補列,點擊【轉(zhuǎn)換】-【透視列】,值 列 選擇加班時長,確定即可!4、點擊【主頁】-【加載到工作表】,結(jié)束!這種我們需要利用到一些新版函數(shù),也正好讓大家感受一下新函數(shù)好用的地方!
為了大家更直觀的看到我們公式是如何一步一步書寫的,我們也錄制了動畫!=SUBSTITUTE(TEXTJOIN(',',,$A$2:$A$14),',',REPT(' ',99))
▲ 這一步,我們主要干了兩個事情,把所有的姓名使用TEXTJOIN拼接到一起,然后把中文逗號,替換成99個空格,方便我們下一步分別提取姓名!
=TRIM(MID(SUBSTITUTE(TEXTJOIN(',',,$A$2:$A$14),',',REPT(' ',99)),ROW($1:$99)*99-98,99))
▲ 我們在第一次處理的基礎(chǔ)上,從1,100,199……提取99個長度,因為我們上一步替換成了99個空格,這樣截取的內(nèi)容就是空格+對應分隔符的內(nèi)容,這也是我們沒有類似的TextSplit函數(shù)前,分隔文本的常用套路!提取出來的結(jié)果是內(nèi)存數(shù)組,我是O365版本所以自動擴展顯示了,不要再問我的為什么不行,可能你的版本不支持動態(tài)數(shù)組!
=UNIQUE(TRIM(MID(SUBSTITUTE(TEXTJOIN(',',,$A$2:$A$14),',',REPT(' ',99)),ROW($1:$99)*99-98,99)))
你學到了什么,明白一個多層嵌套的公式是怎么寫出來的了吧!我們1、先有處理思路,根據(jù)思路去搜索方式,最好有一定的函數(shù)儲備知識2、知道或者通過測試知道每步的運行結(jié)果,根據(jù)結(jié)果決定下一步使用哪一個函數(shù)(一般都在處理思路時考慮的差不多了)3、想要嵌套,需要知道對應函數(shù)的參數(shù)是否支持上一步的結(jié)果,比如你上一步是文本,下一步你嵌套一個SUM,顯然是沒用對!一句話:有思路、有一定的函數(shù)儲備、掌握函數(shù)參數(shù)類型和結(jié)果類型、適當?shù)木毩暎?br>姓名處理好后,金額比較簡單,我們可以使用SUMIF直接處理=SUMIFS($B:$B,$A:$A,'*'&$E2&'*',$C:$C,F$1)
不過這里還是不太嚴謹?shù)淖龇?,比如王文和王文文就會出現(xiàn)問題!想要更加嚴謹,我們需要把數(shù)據(jù)源稍微加工一下!把兩遍都加上逗號,這樣我們的姓名就全部在兩個中文逗號之間了!在求和的公式中,同樣加上兩個逗號,這樣就不會出現(xiàn)王文和王文文類似的問題了!=SUMIFS($C:$C,$A:$A,'*,'&$F2&',*',$D:$D,G$1)
到這里,我們的核心要分享的知識就結(jié)束了,你可能覺得第一種方法更簡單,但是部分同學更喜歡使用函數(shù)處理!選擇適合自己的方法吧!
本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點擊舉報。