在整理 Excel 資料時,常會遇到一種情況:一筆資料中的多個內容被放在同一個儲存格內,並以逗號分隔。這樣的格式雖然方便閱讀,但不利於後續篩選、比對、統計與資料清理。這篇文章示範如何利用 Excel 的 Power Query,將同一格中的多個項目拆成多列,讓資料結構更整齊,也更方便後續分析。
假資料範例
以下用一組假資料示範,欄位名稱也完全重新命名,不使用原始欄位:
| 配方編碼 | 原料組合 | 配方型態 |
|---|---|---|
| P001 | GINGER EXTRACT, LICORICE POWDER, PEPPERMINT OIL | 綜合配方 |
| P002 | CALCIUM CARBONATE, MAGNESIUM OXIDE | 綜合配方 |
| P003 | VITAMIN C, ZINC GLUCONATE, ELDERBERRY EXTRACT | 綜合配方 |
| P004 | CHAMOMILE EXTRACT, LEMON BALM, PASSIONFLOWER | 綜合配方 |
我們要得到的結果
例如第一筆資料 P001 原本在同一格中有三個原料:
- GINGER EXTRACT
- LICORICE POWDER
- PEPPERMINT OIL
拆分後,希望結果變成這樣:
| 配方編碼 | 單一原料 |
|---|---|
| P001 | GINGER EXTRACT |
| P001 | LICORICE POWDER |
| P001 | PEPPERMINT OIL |
| P002 | CALCIUM CARBONATE |
| P002 | MAGNESIUM OXIDE |
| P003 | VITAMIN C |
| P003 | ZINC GLUCONATE |
| P003 | ELDERBERRY EXTRACT |
| P004 | CHAMOMILE EXTRACT |
| P004 | LEMON BALM |
| P004 | PASSIONFLOWER |
操作步驟:用 Power Query 拆成多列
第一步:先把資料轉成表格
先選取整份資料,按下 Ctrl + T,將資料範圍轉成 Excel 表格,並確認「我的表格具有標題列」已勾選。
第二步:將表格載入 Power Query
在 Excel 上方功能區點選:
資料 → 從表格/範圍
這樣就會進入 Power Query 編輯器。
第三步:依需要篩選資料
如果你只想處理特定類型的資料,例如只處理「綜合配方」,可以先在 配方型態 欄做篩選,保留需要的列。
第四步:將原料組合欄依逗號拆開
選取 原料組合 這一欄,然後依序點選:
分割資料行 → 依分隔符號
接著設定:
- 分隔符號:選擇 逗號
- 分割方式:選擇 每次出現分隔符號
- 進階選項:選擇 分割成資料列
這一步很重要。不要選「分割成資料行」,而是要選 分割成資料列,這樣同一筆資料才會展開成多筆。
第五步:去除多餘空白
因為逗號後面通常會帶一個空格,例如:
GINGER EXTRACT, LICORICE POWDER, PEPPERMINT OIL
拆完之後,第二個與第三個原料前面可能會有空白,所以建議再做一次清理。
選取拆分後的欄位,點選:
轉換 → 格式 → 修剪
這樣可以去掉每個項目前後多餘的空白字元。
第六步:保留需要的欄位
整理完成後,你可以只保留:
- 配方編碼
- 原料組合(此時已是一列一個原料)
如果需要,也可以把欄位名稱重新改成 單一原料,讓表格更清楚。
第七步:載回 Excel
最後點選:
常用 → 關閉並載入
Power Query 就會把拆分完成的資料重新匯回 Excel 工作表。
這種做法的優點
- 適合處理一格內有多個值的資料
- 比手動複製貼上更快,也更不容易出錯
- 原始資料更新後,只要重新整理查詢即可重跑流程
- 很適合後續做查找、比對、樞紐分析或統計
結語
如果你的 Excel 資料中,常常出現「一筆資料裡面塞了多個項目」的情況,那麼 Power Query 會是比公式更穩定、更容易維護的做法。特別是在需要把同一格中的多個值拆成多列時,使用「依分隔符號分割成資料列」這個功能,通常就是最有效率的解法。
只要第一次設定好流程,之後遇到同樣格式的新資料,通常只需要重新整理,就能快速完成拆分與清理。
捲動到此處時自動載入留言…