VBA加總含有單位的數值
在 Excel 裡,如果你有一列像「100元」、「200元」、「300元」….這樣的資料,直接使用 SUM
是沒辦法加總的,因為 Excel 把它們當成「文字」處理。

但別擔心!今天 Orange 教你一個 VBA 小技巧,只要一個按鈕,就能快速加總這些含有單位的數值!
實際範例
假設資料如下:
A欄 |
---|
100元 |
200元 |
300元 |
400元 |
500元 |
你想要加總金額,但又不想手動移除「元」或使用輔助欄位。
輸入巨集
※輸入以下指令※
Sub 加總含單位數值()
For i = 1 To 5
Result = Result + Val(Cells(i, 1))
Next i
Range("C1") = Result
End Sub

執行巨集
點選「開發人員」-「 巨集」或按下「Ctrl」+「F8」快捷鍵,並「執行」巨集。

執行後則將 A1:A5 儲存格中的「含單位數值」 全部加總,並將結果顯示在 C1 儲存格!

語法說明
Val()
是 VBA 的「擷取數字」函數,它會自動忽略文字,只留下開頭的數字。Result = Result + ...
這是累加的動作,把每次擷取到的數字加到 Result
裡。
每跑一次迴圈,就會把 A1~A5 的數值逐一加進去。