無條件進位是指只要數值有餘數,不論餘數大小,一律往上進到指定位數或倍數的計算方式。 本文完整教學 Excel 兩大無條件進位函數 ROUNDUP 與 CEILING 的語法差異、位數對照表、負數處理方式,並附 4 大台灣職場實務案例與常見錯誤排查。
目錄
Toggle無條件進位是什麼?與四捨五入、無條件捨去的差異
在 Excel 處理數字時,你會遇到三種最基本的進位邏輯:無條件進位、四捨五入、無條件捨去。很多人搞混它們的差異,其實只要看一個數字就能秒懂。
以數字 2.3 為例,三種處理方式的結果完全不同:
| 處理方式 | 使用函數 | 公式(進位到整數) | 結果 |
|---|---|---|---|
| 無條件進位 | ROUNDUP | =ROUNDUP(2.3, 0) | 3 |
| 四捨五入 | ROUND | =ROUND(2.3, 0) | 2 |
| 無條件捨去 | ROUNDDOWN | =ROUNDDOWN(2.3, 0) | 2 |
無條件進位的核心邏輯很簡單:只要有餘數就往上進,不管餘數是 0.1 還是 0.9,結果都一樣。 這跟四捨五入「看餘數大小決定方向」的邏輯完全不同。

台灣職場常見的無條件進位場景
為什麼你需要學無條件進位?因為在台灣職場中,以下情境幾乎天天遇到:
- 發票與報價金額:報價單金額需進位至整數元或十元,避免少收款項
- 加班工時計算:勞基法相關規定下,加班時數常需進位至 0.5 小時或 15 分鐘
- 採購數量:需要 47 個零件,每箱 12 個,你不能買 3.9 箱——必須進位到 4 箱
- 稅金計算:營業稅、所得稅金額進位至元,確保稅金不低估
- 報表統計:專案管理中的資源分配、預算估算需進位以保留緩衝
Excel 無條件進位函數總覽與選用指南
Excel 提供多個與進位相關的函數,但真正屬於「無條件進位」的只有兩大類:ROUNDUP 系列和 CEILING 系列。很多人把 MROUND 也歸類為無條件進位,這是錯誤的——MROUND 是四捨五入到最接近的倍數,不是無條件進位。
| 函數名稱 | 類型 | 主要用途 | 控制方式 | 負數支援 |
|---|---|---|---|---|
| ROUNDUP | 無條件進位 | 進位到指定小數位數 | 位數(0, 1, 2, -1, -2) | ✅ 遠離零 |
| CEILING | 無條件進位 | 進位到指定倍數 | 基數(1, 10, 0.5, 5) | ⚠️ 舊版有限制 |
| CEILING.MATH | 無條件進位 | 進位到指定倍數(進階) | 基數 + mode 參數 | ✅ 可控制方向 |
| CEILING.PRECISE | 無條件進位 | 進位到指定倍數(精確) | 基數(忽略正負號) | ✅ 永遠向正無限大 |
| MROUND | ❌ 非無條件進位 | 四捨五入到最接近的倍數 | 基數 | ✅ |
| INT | ❌ 非進位函數 | 取整數(向下取整) | 無 | ⚠️ 負數向負無限大 |
為什麼 INT 不是進位函數? 很多初學者會用 INT 來「取整數」,但 INT 的邏輯是向下取整(無條件捨去),不是進位。例如 INT(2.9) = 2,而不是 3。如果你要無條件進位到整數,應該用 ROUNDUP(2.9, 0) 或 CEILING(2.9, 1)。
怎麼選?一個問題就能決定
選用哪個無條件進位函數,取決於你的需求是「控制小數位數」還是「控制倍數單位」:

- 「我要保留兩位小數,多的進位」 → 用 ROUNDUP(控制小數位數)
- 「我要進位到 10 的倍數」 → 用 CEILING(控制倍數單位)
- 「我要處理負數,而且要控制進位方向」 → 用 CEILING.MATH
記住這個口訣:ROUNDUP 管「位數」,CEILING 管「倍數」。
ROUNDUP 函數完整教學:語法、範例與常見錯誤
ROUNDUP 是最直覺的無條件進位函數,適合需要「進位到指定小數位數」的場景。如果你熟悉 ROUND 函數的語法,ROUNDUP 的用法幾乎一模一樣,差別只在進位方向。
ROUNDUP 語法說明
=ROUNDUP(數字, 位數)
- 數字:要進位的數值,可以是儲存格參照或公式運算結果
- 位數:決定進位到哪個位置
- 正數 → 保留幾位小數(1 = 一位小數,2 = 兩位小數)
- 0 → 進位到整數
- 負數 → 進位到十位、百位、千位(-1 = 十位,-2 = 百位)
以下是 ROUNDUP 位數參數的完整對照表,用同一個數字 2.136 來示範:
| 公式 | 位數意義 | 結果 | 說明 |
|---|---|---|---|
| =ROUNDUP(2.136, 2) | 保留兩位小數 | 2.14 | 第三位小數 6 被進位 |
| =ROUNDUP(2.136, 1) | 保留一位小數 | 2.2 | 第二位小數 3 被進位 |
| =ROUNDUP(2.136, 0) | 進位到整數 | 3 | 小數部分全部進位 |
再用數字 87 示範負數位數:
| 公式 | 位數意義 | 結果 | 說明 |
|---|---|---|---|
| =ROUNDUP(87, -1) | 進位到十位 | 90 | 個位數 7 被進位 |
| =ROUNDUP(87, -2) | 進位到百位 | 100 | 十位數 8 被進位 |
| =ROUNDUP(87, -3) | 進位到千位 | 1000 | 百位數 0→但因有餘數仍進位 |
重點提醒:ROUNDUP 的「無條件」是指只要該位數後面有任何非零數字,就一定進位。即使是 2.001,用 ROUNDUP(2.001, 0) 結果也是 3,不是 2。
ROUNDUP 常見錯誤與注意事項
錯誤 1:位數輸入文字而非數字
如果位數參數不小心輸入了文字(例如儲存格內容是「二」而非 2),Excel 會回傳 #VALUE! 錯誤。修正方式:確認位數參數是數值型態,可用 VALUE() 函數轉換。
錯誤 2:誤用 ROUND 代替 ROUNDUP
這是最常見的錯誤。當數字的餘數小於 5 時,ROUND 和 ROUNDUP 的結果完全不同:
| 公式 | 結果 | 原因 |
|---|---|---|
| =ROUND(2.1, 0) | 2 | 四捨五入,0.1 < 0.5 所以捨去 |
| =ROUNDUP(2.1, 0) | 3 | 無條件進位,有餘數就進 |
如果你的需求是「絕對不能少算」,請務必用 ROUNDUP 而非 ROUND。
錯誤 3:負數的進位方向
ROUNDUP 對負數的行為是「遠離零」,也就是往更負的方向進位:
- =ROUNDUP(-2.3, 0) → -3(不是 -2)
- =ROUNDUP(-2.7, 0) → -3
如果你希望負數「趨近零」進位(-2.3 → -2),需要改用 CEILING.MATH 搭配 mode 參數。

CEILING 函數完整教學:進位到指定倍數
當你的需求不是「保留幾位小數」,而是「進位到某個倍數」時,CEILING 就是你的首選。例如進位到 5 的倍數、10 的倍數、0.5 的倍數——這些都是 ROUNDUP 做不到(或很難做到)的事。
CEILING 語法與基本範例
=CEILING(數字, 基數)
- 數字:要進位的數值
- 基數:進位的單位(你希望結果是這個數的整數倍)
以下是 CEILING 的完整範例對照表:
| 情境 | 公式 | 結果 | 說明 |
|---|---|---|---|
| 進位到整數 | =CEILING(3.2, 1) | 4 | 3.2 → 下一個 1 的倍數 |
| 進位到十位 | =CEILING(87, 10) | 90 | 87 → 下一個 10 的倍數 |
| 進位到百位 | =CEILING(87, 100) | 100 | 87 → 下一個 100 的倍數 |
| 進位到千位 | =CEILING(1234, 1000) | 2000 | 1234 → 下一個 1000 的倍數 |
| 進位到小數一位 | =CEILING(2.13, 0.1) | 2.2 | 2.13 → 下一個 0.1 的倍數 |
| 進位到 5 的倍數 | =CEILING(13, 5) | 15 | 13 → 下一個 5 的倍數 |
| 進位到 0.5 的倍數 | =CEILING(2.3, 0.5) | 2.5 | 2.3 → 下一個 0.5 的倍數 |
| 進位到 15 分鐘 | =CEILING(22, 15) | 30 | 22 分鐘 → 下一個 15 的倍數 |
| 進位到 50 的倍數 | =CEILING(123, 50) | 150 | 123 → 下一個 50 的倍數 |
注意:當數字本身就是基數的整數倍時,CEILING 不會再進位。例如 =CEILING(20, 10) = 20,不是 30。
CEILING.MATH 與 CEILING.PRECISE 的差異
Excel 有三個版本的 CEILING 函數,它們在處理負數時的行為不同。如果你只處理正數,三個函數的結果完全一樣;但一旦碰到負數,差異就很明顯了。
=CEILING.MATH(數字, 基數, mode)
- mode = 0 或省略:負數遠離零進位(預設)
- mode = -1(或任何非零值):負數趨近零進位
=CEILING.PRECISE(數字, 基數)
- 沒有 mode 參數,不考慮基數的正負號,結果永遠向正無限大方向進位。這代表不管你給的基數是正是負,CEILING.PRECISE 都會往數線右邊(正方向)進位。
以 -2.3 為例,四個公式的結果對照:
| 公式 | 結果 | 進位方向 |
|---|---|---|
| =CEILING(-2.3, 1) | -2 | 趨近零(舊版行為,不同版本可能不一致) |
| =CEILING.MATH(-2.3, 1) | -2 | 遠離零(預設 mode=0) |
| =CEILING.MATH(-2.3, 1, -1) | -2 | 趨近零(mode=-1) |
| =CEILING.PRECISE(-2.3, 1) | -2 | 向正無限大 |
實務建議:如果你使用的是 Excel 2013 以上版本,一律使用 CEILING.MATH。它的行為最可預測,而且可以透過 mode 參數精確控制負數方向,不會因為 Excel 版本不同而出現不一致的結果。

CEILING 常見錯誤排查
錯誤 1:基數為 0 → #DIV/0! 錯誤
=CEILING(3.2, 0) 會回傳 #DIV/0! 錯誤,因為「進位到 0 的倍數」在數學上沒有意義。修正方式:確認基數欄位不為零,可用 IF 函數防呆:
=IF(B1=0, A1, CEILING(A1, B1))
錯誤 2:數字與基數正負號不一致 → #NUM! 錯誤
在舊版 Excel(2010 以前)中,=CEILING(-3, 2) 會回傳 #NUM! 錯誤,因為舊版要求數字和基數的正負號一致。修正方式:改用 CEILING.MATH,它不受此限制。
錯誤 3:小數基數的浮點數精度問題
使用小數基數(如 0.1)時,Excel 的浮點數運算可能產生微小誤差。例如 =CEILING(1.1, 0.1) 理論上應該是 1.1,但某些情況下可能回傳 1.2000000000000002。
修正方式:用 ROUND 包裹結果:
=ROUND(CEILING(A1, 0.1), 1)
ROUNDUP vs CEILING:如何選擇正確的無條件進位函數?
這是最多人問的問題。兩個函數都能做到「無條件進位」,但它們的思考角度完全不同。
一句話總結:ROUNDUP 控制「小數位數」,CEILING 控制「倍數單位」。
用同一個金額 123.456 來看兩個函數的差異:
| 需求 | ROUNDUP 寫法 | CEILING 寫法 | 結果 |
|---|---|---|---|
| 進位到兩位小數 | =ROUNDUP(123.456, 2) | =CEILING(123.456, 0.01) | 123.46 |
| 進位到整數 | =ROUNDUP(123.456, 0) | =CEILING(123.456, 1) | 124 |
| 進位到十位 | =ROUNDUP(123.456, -1) | =CEILING(123.456, 10) | 130 |
| 進位到百位 | =ROUNDUP(123.456, -2) | =CEILING(123.456, 100) | 200 |
| 進位到 5 的倍數 | ❌ 無法直接做到 | =CEILING(123.456, 5) | 125 |
| 進位到 50 的倍數 | ❌ 無法直接做到 | =CEILING(123.456, 50) | 150 |
從表格可以看出:
- 進位到小數位數、整數、十位、百位 → 兩個函數都能做,用哪個都可以
- 進位到特定倍數(5、15、50、0.5) → 只有 CEILING 能做
判斷流程
- 你要進位到「第幾位小數」嗎? → 用 ROUNDUP,語法更直覺
- 你要進位到「某個倍數的整數倍」嗎?(如 5 的倍數、15 分鐘的倍數) → 用 CEILING
- 需要處理負數且精確控制方向? → 用 CEILING.MATH
- 兩個都能做的情境? → 建議用 ROUNDUP,因為大多數人對「位數」的概念比「基數」更熟悉,公式可讀性更高

如果你在專案報表中需要大量使用無條件進位公式,建議統一使用同一個函數,避免團隊成員看到不同寫法時產生混淆。
實務應用案例:台灣職場常見進位情境
發票與報價金額進位(進位至元或十元)
情境:你在製作報價單,計算含稅金額後出現小數,需要進位到整數元。
| 品項 | 未稅金額 | 含稅金額(×1.05) | 進位至元(公式) | 結果 |
|---|---|---|---|---|
| A 零件 | NT$1,234 | 1,295.7 | =ROUNDUP(A2*1.05, 0) | NT$1,296 |
| B 模組 | NT$5,678 | 5,961.9 | =ROUNDUP(A3*1.05, 0) | NT$5,962 |
| C 服務 | NT$890 | 934.5 | =ROUNDUP(A4*1.05, 0) | NT$935 |
如果公司規定報價金額需進位到十元:
=CEILING(A2*1.05, 10)
- 1,295.7 → NT$1,300
- 5,961.9 → NT$5,970
- 934.5 → NT$940
這裡用 ROUNDUP 或 CEILING 都可以。進位到整數元用 ROUNDUP(,0) 比較直覺;進位到十元用 CEILING(,10) 比較直覺。
加班工時進位(進位至 0.5 小時或 15 分鐘)
情境:HR 計算加班費,公司規定加班時數以 0.5 小時為單位,不足 0.5 小時以 0.5 小時計。
| 員工 | 實際加班時數 | 公式 | 計費時數 |
|---|---|---|---|
| 王小明 | 2.3 小時 | =CEILING(2.3, 0.5) | 2.5 小時 |
| 李小華 | 1.1 小時 | =CEILING(1.1, 0.5) | 1.5 小時 |
| 張大偉 | 3.0 小時 | =CEILING(3.0, 0.5) | 3.0 小時(已是 0.5 的倍數,不進位) |
如果公司以 15 分鐘為單位計算,且工時以分鐘記錄:
| 員工 | 實際加班(分鐘) | 公式 | 計費分鐘 | 換算小時 |
|---|---|---|---|---|
| 王小明 | 138 分鐘 | =CEILING(138, 15) | 150 分鐘 | 2.5 小時 |
| 李小華 | 67 分鐘 | =CEILING(67, 15) | 75 分鐘 | 1.25 小時 |
這個情境只能用 CEILING,因為 ROUNDUP 無法直接「進位到 0.5 的倍數」或「15 的倍數」。
採購數量進位(進位至箱或最小訂購量)
情境:倉管需要採購零件,每箱 12 個,需要計算要買幾箱。
需求數量 47 個 ÷ 每箱 12 個 = 3.916… 箱 → 必須買 4 箱
=CEILING(47/12, 1)
結果:4
你可能會想:「用 ROUNDUP(47/12, 0) 不也是 4 嗎?」沒錯,這個情境兩者結果相同。但如果最小訂購量不是 1 箱而是 3 箱呢?
=CEILING(47/12, 3)
結果:6(下一個 3 的倍數)
這時候 ROUNDUP 就無法直接處理了,你需要額外的計算邏輯。所以採購情境建議統一用 CEILING。
稅金與小數位進位
情境:計算營業稅,稅金需進位到小數兩位(進位至分)。
| 品項 | 金額 | 稅率 | 稅金公式 | 稅金結果 |
|---|---|---|---|---|
| 顧問服務 | NT$15,000 | 5% | =ROUNDUP(15000*0.05, 2) | NT$750.00 |
| 軟體授權 | NT$8,765 | 5% | =ROUNDUP(8765*0.05, 2) | NT$438.25 |
| 設計費 | NT$3,333 | 5% | =ROUNDUP(3333*0.05, 2) | NT$166.65 |
稅金計算用 ROUNDUP 最直覺,因為你的需求就是「保留兩位小數,多的進位」。

當進位需求變成團隊協作問題
如果你的團隊每天都在處理報價單、工時表、採購單,而且需要多人同時編輯、自動計算、即時更新——Excel 的單機作業模式會開始出現瓶頸:版本衝突、公式被誤刪、沒有自動通知。
monday.com|250,000+ 團隊的專案管理首選
- 📋 看板、甘特圖、時間軸——同一專案 3 種視圖自由切換
- ⚡ 200+ 自動化範本——截止提醒、任務指派、進度同步全自動
- 👥 從 2 人到 200 人團隊都適用——10 分鐘上手
- 🔗 整合 Gmail、Slack、Zoom 等常用工具——資訊不用到處找
✓ 免費版永久使用 · ✓ Fortune 500 有 60% 在用 · ✓ 不需信用卡
補充:Excel「增加小數位」按鈕和 ROUNDUP 的關鍵差異
這是初學者最容易搞混的一點,必須特別說明。
Excel 工具列上有「增加小數位」和「減少小數位」兩個按鈕(在「常用」→「數字」區塊)。很多人以為按「減少小數位」就等於無條件進位或四捨五入,但其實:
按鈕只改變「顯示格式」,不改變「實際數值」。
| 操作 | 儲存格顯示 | 實際數值(用在公式中) |
|---|---|---|
| 輸入 2.136,按「減少小數位」到一位 | 2.1 | 2.136(沒變) |
| 輸入 2.136,用 =ROUNDUP(2.136, 1) | 2.2 | 2.2(真的變了) |
這代表什麼?如果你用按鈕把 2.136 顯示成 2.1,然後拿這個儲存格去做加總,Excel 加的是 2.136,不是 2.1。報表上看起來數字對不上,其實是顯示值和實際值不一致造成的。
結論:如果你需要的是「數值真的被進位」,一定要用 ROUNDUP 或 CEILING 函數,不要只靠格式按鈕。
如果你想更系統性地學習 Excel 的數字處理技巧,Coursera 上的 Excel Skills for Business 專項課程(Macquarie University 開設,共 4 門課、約 6 個月完成)涵蓋公式設計、資料驗證、進階函數與自動化,完成後可取得專項證書。適合需要有系統地補齊 Excel 基礎的職場工作者。
Excel Skills for Business|Macquarie University 認證
- 🏆 66 萬+ 學員選修——Coursera 平台上最熱門的 Excel 課程
- 📊 4 階段完整學程——公式、樞紐分析、圖表、儀表板全涵蓋
- 🎓 Macquarie University 認證——完成後可加入 LinkedIn 履歷
- 🌍 多語字幕支援——自學節奏、隨時隨地學習
✓ Coursera Plus 7 天免費試用 · ✓ 可隨時取消 · ✓ 完成後獲得正式證書
結論
以下是本文的核心判斷規則,可直接存起來備用:
- ROUNDUP 控制小數位數:進位到整數用 ROUNDUP(A1, 0),進位到兩位小數用 ROUNDUP(A1, 2),進位到百位用 ROUNDUP(A1, -2)
- CEILING 控制倍數單位:進位到 5 的倍數用 CEILING(A1, 5),進位到 0.5 用 CEILING(A1, 0.5),進位到 15 分鐘用 CEILING(A1, 15)
- 處理負數一律用 CEILING.MATH:可透過 mode 參數精確控制進位方向,避免版本差異造成的錯誤
- 格式按鈕 ≠ 真正進位:「減少小數位」按鈕只改顯示,不改數值,報表計算務必用函數
- 選擇困難時用 ROUNDUP:大多數情境 ROUNDUP 都能處理,語法也比較直覺
下一步行動:打開你手邊的 Excel 報表,找一個需要進位的欄位,試著用 ROUNDUP 或 CEILING 替換原本的手動調整。從一個公式開始,你會發現整欄數據瞬間就處理完了。
常見問題 FAQ
無條件進位與四捨五入有什麼差別?
無條件進位是只要有餘數就往上進,不論餘數大小;四捨五入則是看餘數是否 ≥ 5 來決定進或捨。例如 2.3 用無條件進位(ROUNDUP)到整數是 3,用四捨五入(ROUND)到整數是 2。只有當餘數 ≥ 5 時,兩者結果才會相同(例如 2.7 兩者都是 3)。
如何將負數無條件進位?
使用 CEILING.MATH 函數,透過 mode 參數控制方向:
- =CEILING.MATH(-2.3, 1, 0) → -2(遠離零,預設行為)
- =CEILING.MATH(-2.3, 1, -1) → -2(趨近零)
注意 ROUNDUP 對負數一律「遠離零」進位(-2.3 → -3),無法改變方向。
CEILING 出現 #NUM! 或 #DIV/0! 怎麼辦?
- #DIV/0!:基數為 0,改為有效數值即可
- #NUM!:舊版 Excel 中數字與基數正負號不一致,改用 CEILING.MATH 即可解決
建議在公式外層加 IF 防呆:=IF(B1=0, A1, CEILING.MATH(A1, B1))
ROUNDUP 和 CEILING 哪個比較好用?
沒有絕對的好壞,取決於需求。如果你要「進位到第幾位小數」,ROUNDUP 語法更直覺;如果你要「進位到某個倍數」(如 5、10、0.5),只有 CEILING 能做到。詳細比較可參考本文的 ROUNDUP vs CEILING 對照表,也可以到Excel 函數總覽頁查看更多相關函數。
如何進位到百位或千位?
兩種做法都可以:
- ROUNDUP:=ROUNDUP(1234, -2) → 1300(進位到百位),=ROUNDUP(1234, -3) → 2000(進位到千位)
- CEILING:=CEILING(1234, 100) → 1300(進位到百位),=CEILING(1234, 1000) → 2000(進位到千位)
Excel 內建「增加小數位」按鈕和 ROUNDUP 有什麼不同?
最關鍵的差異:按鈕只改變「顯示格式」,ROUNDUP 改變「實際數值」。如果你用按鈕把 2.136 顯示成 2.1,儲存格裡的值仍然是 2.136,拿去做加總時會用 2.136 計算,導致報表數字看起來對不上。要讓數值真正被進位,必須使用 ROUNDUP 或 CEILING 公式。