王志軍



最近在工作中遇到一個比較尷尬的問題,如圖1所示,這是各部門的獎勵補貼數據,同一個部門的數據都擠在一個單元格內,現在需要計算每個部門的獎勵補貼總和,該如何處理呢?
方法一:借助Word進行中轉
首先復制Excel中B列的混合數據,打開Word,右鍵選擇“只保留文本”。按下“Ctrl+H”組合鍵,打開替換對話框,點擊左下角的“更多”按鈕,切換到高級替換界面,勾選“使用通配符”復選框,查找內容輸入“[!^1-^127]{1,}”,替換為“+”,點擊“全部替換”按鈕。將完成替換之后的內容復制粘貼回Excel,如圖2所示,現在看到的就是正常計算的結果了,這種方法的缺點是源數據變更之后,必須按照同樣的步驟進行再次處理。
方法二:使用Power Query編輯器
如果是2016或更高的版本,那么可以使用Power Query編輯器完成。切換到“數據”選項卡,在“獲取和轉換數據”功能組選擇“自表格/區域”,將數據加載到Power Query編輯器,切換到“添加列”選項卡,選擇“常規→自定義列”,自定義添加列,輸入以下公式:
=List.Sum(List.Transform(Text.SplitAny([補貼明細],Text.Remove([補貼明細],{"0".."9","."})),Number.From))
我們可以看到圖3所示的效果,返回“主頁”選項卡,最后點擊“關閉并上載”就可以了。這種方法的優勢在于如果源數據發生了變更,只需要在匯總表右擊更新就可以了。