
ℹ️效率職人 | 傳送門Portaly | 更多學習資源
在某些商品系統中,產品名稱常常會用「產品名稱+數量」的形式呈現,例如「盤子-20」、「不鏽鋼鍋-2」這種格式。
今天我們就來解一個實務問題:
如何從這種合併的產品名稱中:
- 自動找出產品名稱,查出單價
- 自動抓出數量
- 並且計算出正確的總金額!
📊 資料範例
我們的原始資料長這樣(左表):
C欄
是「產品名稱-數量」H:I欄
是查詢用的產品單價表
目標是:
- 自動拆解出產品名稱 → 查出單價
- 自動拆出數量 → 計算出「總金額」

👁️先看結果
輸入以下公式
單價:D3=VLOOKUP(LEFT(C3,FIND("-",C3)-1),$H$2:$I$7,2,0)
總金額:E3=MID(C3,FIND("-",C3)+1,9)*D3

🔍 解法拆解
第一步:從產品名稱中擷取「產品名稱」
=LEFT(C3,FIND("-",C3)-1)
這串公式會:
FIND("-",C3)
找出「-」的位置LEFT(... , 位置-1)
擷取「-」左邊的文字,也就是產品名稱

第二步:根據產品名稱去查單價
=VLOOKUP(LEFT(C3,FIND("-",C3)-1), $H$2:$I$7, 2, 0)
這串就是標準的 VLOOKUP
查表用法
- 把剛剛擷取出來的產品名稱當作查詢值
- 到右邊的
$H$2:$I$7
表格中找對應的單價 - 回傳第 2 欄,也就是單價欄

第三步:從產品名稱中擷取數量
=MID(C3, FIND("-", C3) + 1, 9)
這邊用 MID()
函數搭配 FIND()
來抓出「-」後面的文字(也就是數量)
補充:為什麼長度抓 9?
因為多數數量都是 1~2 位數,抓 9 是一種保險設計。

第四步:計算總金額
只要把單價乘以數量,就能得到總金額:
=MID(C3,FIND("-",C3)+1,9) * D3

✅ 實務應用場景
這個方法非常適合處理:
- ERP 或 POS 系統匯出的資料格式不統一
- 欄位只有「產品名稱-數量」,需要自動拆解
- 想根據產品名稱去查單價,再回推總額
🧠 延伸作法
如果你覺得這些函數蠻複雜的,你也可以考慮用 Power Query 做這類拆欄 + 合併的流程,自動化程度更高!
如果使用Power Query只需要3個按鍵就能搞定了
- 分割資料行
- 資料合併
- 乘
只要做完一次未來只需要從新整理就可以了
👇看一下設定好的成果

PS.這是《一小時Power Query速成班》準備要放上去的課後作業
訂閱者可往下滑,觀看Power Query作法
Power Query線上課程
如果你也想學習Power Query,我有製作一堂線上課程叫做:《一小時Power Query速成班》
先說雖然課程時間大約1小時(有超過),但加上練習&作業大概需要花2~4小時,這不是一堂看過就會的課程,必須親自動手實作!!
