愚人
在日常工作中我們經常要對數據進行整理,一些數據由于原始錄入時沒有按照一定的標準輸入,這樣在后期整理時就顯得比較麻煩。比如筆者所在公司人事部的MM,在招聘現場記錄招聘人員信息時為了圖快,直接在記事本使用“人名+電話號碼”的方式記錄大量招聘人員的信息(圖1)。現在回到公司后MM需要在Excel中按照“人名+電話號碼”各一列的方式重新整理,因為人員信息較多,重新錄入工作量就較大。現在借助Word和Excel即可快速整理數據(本文中所有電話數據皆為自動填充的數據,純為杜撰)。
首先在記事本全選復制上述數據,打開Word 2016后將其粘貼到新建文本文件中。點擊“替換”,在彈出的查找與替換窗口,查找的內容輸入“[0-9]{1,}”,[0-9]的意思是查找數據中包含0-9的數字(因為用戶的電話號碼都是由這些數字組成的)。{1,}表示查找一個字符以上的字符串,這里大家可以根據實際數據情況進行特定數據的查找。比如要查找身份證號碼,則使用“ [0-9X]”(因為有些用戶的身份證會包含x字符校驗碼),要查找用戶的英文用戶名稱則使用“[a-z]{1,}”(英文用戶姓名由a-z組成)。
單擊“更多”按鈕,展開下拉窗口,勾選“使用通配符”,切換到“替換為”輸入框,點擊“替換”選項的“特殊格式”,在展開的通配符列表依次點擊“制表符”、“查獲內容”、“段落標記”,即輸入“^t^&^p^”。其中“t”是制表符,表示在將找到的電話號碼前加上制表符,即將姓名和電話號碼使用制表符隔開,這樣就可以將姓名和電話復制到Excel的兩列中。^& 表示查找的字符,查找什么數據就代表什么類型數據,這里指用戶電話號碼數據。^p是換行符,意思是在找到符合要求的數據后另起一行,前后用戶信息各以一行排列。最后點擊“全部替換”(圖2)。
這樣完成替換后在Word中就可以看到原來雜亂的數據變為“姓名+制表符+電話號碼”的格式,接下來將整理后的數據復制到Excel即可(圖3)。
啟動Excel,選中兩列用于存放上述數據,右擊單元格選擇“設置單元格格式”,在打開的窗口中將格式設置為“文本”,這樣電話號碼不會變為默認的數字(否則手機號碼默認會以科學計數法顯示,圖5)。
返回Word窗口,全選處理后的數據選擇“復制”,切換到Excel,右鍵單擊A2單元格,在粘貼選項中選擇“匹配目標格式”,這樣數據就粘貼到Excel的列中了(圖6)。
由于手機號碼都是11位數字,為了防止在手工錄入中遺漏手機號碼的數字,在Excel中還可以使用Excel中的數據有效性來查錯。
選中B2,點擊“數據→數據驗證”,在彈出的窗口中,驗證條件選擇“自定義”,在公式欄輸入“=AND(LEN(B2)=11,ISNUMBER(B2),MOD(B2,1)=0)”,這個公式有三個條件,AND(LEN))表示輸入數據長度必須為11位,多余或者少于該長度都是錯誤數據,ISNUMBER表示輸入數據為數值,MOD表示輸入數據必須為整數,不能帶小數點。勾選“對有同樣設置的所有其他單元格應用這些更改”,將公式填充到電話號碼這列的所有單元格(圖7)。
返回Excel窗口,選中B列,這樣Excel會對電話號碼這列數據進行校驗,點擊“數據→數據驗證→圈釋無效數據”,這樣所有錯誤的電話號碼都會被紅色圈記標識出來,按提示進行更改即可(圖8)。
設置上述校驗公式后,以后如果要在上述文件中繼續添加用戶電話號碼,只要輸入的位數不是11位,Excel都會自動彈出提示,提醒我們這里輸入了錯誤的數據(圖9)。
小提示
我們也可以根據實際情況靈活使用通配符,比如為了保護員工的隱私,在公布一些員工信息如公司年會中獎時,需要隱藏員工的手機號碼信息。此時只要在查找框輸入“(1??)????(????)”,即查找所有1開頭的電話號碼,前后括號標識的字段保留原樣,在需要替換內容框輸入“\1****\2”。這里“\1”是指查找內容中的第一個表達式,“\2”是指查找內容中的第二個表格式,這個保留原樣,將中間字段(4位數字)替換為“****”,最后單擊全部替換即可(圖4)。