本文是Excel偷懶的技術(shù)讀者群練習(xí)題045號的答案,練習(xí)題傳到群里一個月了,因過春節(jié)忘寫答案了,今天把答案奉上。 《練習(xí)題045:將不規(guī)范的考勤數(shù)據(jù)整理成清單式表格(函數(shù)、基本操作)》是根據(jù)偷懶的技術(shù)讀者群讀友夜光shi色的問題改編的,原題如下: 上表是某公司的考勤表簡表,每天的考勤都記錄在同一單元格,按日期逐列排列,這個表顯然不利于計算考勤和遲到早退?,F(xiàn)要求將其整理成下表的樣式以方便進(jìn)行統(tǒng)計: 原考勤表是二維報表樣式,目標(biāo)表是一維清單式的,要將二維報表轉(zhuǎn)換為一維的有一個專業(yè)名詞,叫“逆透視”,如果在Power Query中,有逆透視功能,很容易完成轉(zhuǎn)換。如果不用Power Query,可以數(shù)據(jù)透視表來完成。 具體操作如下: 步驟一:按Alt+D+P,打開數(shù)據(jù)透視表向?qū)?;選擇“多重合并 計算區(qū)域” 步驟二:在彈出的對話框中選擇“創(chuàng)建單頁字段” 步驟三:然后選擇要轉(zhuǎn)換的數(shù)據(jù)區(qū)域B1:K11單元格(注意,不含A列),點擊添加,然后點擊下一步。 步驟四:選擇“新建工作表”,點擊完成,將透視表呈現(xiàn)在新的工作表,如下圖所示 步驟五:用鼠標(biāo)雙擊K15單元格,將數(shù)據(jù)源的記錄羅列到新的表格 步驟六:修改列標(biāo)題。刪除D列,然后在A列前插入一列,使用INDEX和MATCH公式根據(jù)姓名查找引用的工號,A2單元格公式如下 =INDEX(源數(shù)據(jù)!$A$2:$A$11,MATCH(B2,源數(shù)據(jù)!$B$2:$B$11,0))步驟七:在E2、F2分別輸入公式下面的公式 =IF(LEN([@打卡時間])=5,IF(--[@打卡時間]<0.5,[@打卡時間],""),LEFT([@打卡時間],5))=IF(LEN([@打卡時間])=5,IF(--[@打卡時間]>=0.5,[@打卡時間],""),RIGHT([@打卡時間],5))公式中的[@打卡時間]是表格的規(guī)范化引用,意思是取打卡時間字段對應(yīng)本行的記錄。E2單元格公式中的[@打卡時間]相當(dāng)于D2單元格。 步驟八:將E列F列復(fù)制粘貼為數(shù)值,然后刪除D列。整理工作完成。 另外還有一個考勤表整理的案例,如下圖: 如何將其整理成下面的規(guī)范的清單式表格: 可以參看下面的視頻課程,課程介紹了兩種方法:用基本操作和函數(shù)、用Power Query。 |
|