Excel 教學:如何將破折號(-)批次轉換為數字 0(含公式、Power Query、VBA 實例)

本教學詳解 Excel 中破折號(-)的常見來源與資料型態,並比較四種將破折號批次轉換為數字 0 的方法,包括尋找取代、公式、Power Query 及 VBA,搭配實務案例、常見問題解析,協助你有效處理缺值與提升數據運算準確性。

🧮 還在用 Excel 管理專案?試試這些更聰明的工具 🚀

從 Excel 升級到專業專案管理 × 自動化平台

還在用 Excel 追進度?monday.com 幫你把任務、時程、甘特圖、報表全部自動化! 支援 Excel 一鍵匯入,輕鬆轉換成更直覺的視覺化專案看板。 全球 22.5 萬家公司愛用,AI 輔助讓團隊溝通更順暢。
⭐ 最多人使用

從任務到 OKR,一站式專案與團隊協作平台

整合文件、OKR、任務與自動化流程,AI 助你更快完成工作。 也支援從 Excel 匯入專案資料。

輕鬆整理文件 × 規劃專案 × 建立資料庫

Notion AI 幫你自動生成 SOP、專案摘要與任務追蹤頁面。 從 Excel 匯入表格,打造你自己的工作空間。

破折號(-)在 Excel 的常見來源與資料型態說明

在 Excel 處理數據時,經常會遇到儲存格出現破折號(-)。這些破折號的來源與型態可能不同,影響後續計算與資料處理。以下整理常見情境:

  • 自動格式產生:部分會計報表或自訂格式,會將數值 0 或空值顯示為破折號(-)。
  • 手動輸入:使用者直接輸入破折號,常用於標示缺值或暫時無資料。
  • 公式結果:某些公式(如 IF 判斷)將特定條件下的結果設為「-」。
  • 資料匯入:從其他系統或 CSV 匯入時,缺值欄位可能以「-」表示。

如何判斷破折號的資料型態?

  • 點選儲存格,觀察公式列:若顯示「-」,通常為文字型態。
  • 使用 ISTEXT(A1) 或 ISNUMBER(A1) 函數:可判斷儲存格內容型態。
  • 檢查格式設定:數值型儲存格若顯示「-」,多半是格式化效果,實際值可能為 0 或空白。

破折號對計算與統計的影響

  • 文字型破折號:無法參與數值運算,統計時會被忽略或導致錯誤。
  • 格式化產生的破折號:實際值為 0 或空白,不影響計算,但顯示上易混淆。
  • 混合型資料:同一欄位同時有數字與破折號,容易造成統計失真。

實務案例
在財務報表中,若將缺值標示為「-」,但未轉換為 0,後續加總、平均等運算將出現錯誤或遺漏,影響決策判斷。

將破折號轉換為數字 0 的方法總覽

根據資料量、來源與處理需求,可選擇不同方法。下表比較各方法適用情境與優缺點:

方法 適用情境 優點 注意事項
尋找和替換 小量、手動輸入、單一工作表 操作簡單、快速 僅適用文字型破折號
公式(IF/陣列) 局部欄位、需保留原始資料 彈性高、可結合其他條件 需額外欄位、批次需拖曳
Power Query 大量資料、重複性高、批次處理 自動化、批次轉換、可重複應用 需學習基本操作
VBA 經常性自動化、複雜情境 全自動、可自訂邏輯 需啟用巨集、注意安全性

方法一:使用「尋找和替換」功能

此方法適合資料量不大、破折號為文字型態的情境。

操作步驟

  1. 選取範圍:選擇需處理的儲存格區域,建議先選定欄位,避免誤及其他資料。
  2. 開啟尋找和替換:按下 Ctrl + H
  3. 設定條件
  4. 「尋找目標」輸入破折號(-)。
  5. 「取代為」輸入數字 0。
  6. 進階設定
  7. 點選「選項」,確認「比對整個儲存格內容」是否勾選,避免部分內容被誤取代。
  8. 執行取代:點擊「全部取代」。

注意事項與常見錯誤

  • 僅能處理文字型破折號,若破折號由格式產生(實際值為 0),則無法取代。
  • 若破折號與其他文字混合(如「-缺值」),需更精確設定搜尋條件。
  • 建議先複製一份原始資料,避免誤操作。

實務應用
適合一次性清理小型名單、報表,或手動輸入的缺值欄位。

方法二:使用公式(IF/IFERROR/陣列公式)

當需保留原始資料、或僅針對特定欄位處理時,公式法最具彈性。

基本公式

假設資料在 A 欄,B1 輸入:

=IF(A1="-", 0, A1)
  • 若 A1 為破折號,則顯示 0,否則顯示原值。

批次應用

  • 將公式向下拖曳至所有需處理的列。
  • 若需處理多欄,可用陣列公式或複製公式至多欄。

處理空值與其他特殊情況

  • 若需同時處理空白,公式可改為:
    =IF(OR(A1="-", ISBLANK(A1)), 0, A1)
  • 若資料有可能為數字 0、破折號或空白,建議明確判斷。

實務案例

  • 在問卷統計中,將所有「-」或空白欄位自動轉為 0,確保後續加總、平均運算正確。

注意事項

  • 公式法需建立新欄位,原始資料不會被覆蓋。
  • 若需回填原欄位,需複製結果並「貼上值」取代原資料。

方法三:使用 Power Query 進行批次轉換

Power Query 適合大量資料、重複性高的情境,能自動化清理流程。

操作步驟

  1. 選取資料範圍,點選「資料」>「從表格/範圍」。
  2. 進入 Power Query 編輯器
  3. 選取目標欄位,右鍵選擇「取代值」。
  4. 「尋找值」輸入破折號(-)。
  5. 「取代為」輸入 0。
  6. 確認資料型態:將欄位型態設為「數值」。
  7. 關閉並載入:將處理後資料匯回工作表。

適用情境

  • 批次處理大量問卷、銷售明細、系統匯入資料。
  • 需定期重複清理同類型資料時。

注意事項

  • Power Query 會產生新表格,原始資料不會被覆蓋。
  • 若資料來源變動,可直接重新整理,流程自動重複。

方法四:使用 VBA 宏自動化處理

適合經常性、複雜或需自動化的轉換需求。

VBA 範例程式碼

  1. 按下 Alt + F11 開啟 VBA 編輯器。
  2. 插入新模組,貼上以下程式碼:
Sub ReplaceDashWithZero()
    Dim rng As Range
    Dim cell As Range
    ' 請將 A1:B100 換成實際資料範圍
    Set rng = Range("A1:B100")
    For Each cell In rng
        If cell.Value = "-" Then
            cell.Value = 0
        End If
    Next cell
End Sub
  1. 關閉編輯器,回到 Excel,按 Alt + F8 執行 ReplaceDashWithZero

注意事項

  • 請確認選取正確範圍,避免誤改其他資料。
  • 執行前建議備份資料。
  • 啟用巨集時需注意安全性,勿執行不明來源程式碼。

實務案例

  • 每月自動清理多份報表中的破折號,節省大量人工作業時間。

常見問題與錯誤排查(FAQ)

Q1:為何尋找和替換後,部分破折號未被轉換?

  • 可能該破折號為格式化產生(實際值為 0 或空白),非文字型「-」。
  • 建議先用 ISTEXT 函數檢查資料型態。

Q2:如何只處理特定欄位或範圍?

  • 尋找和替換時,先選取目標範圍。
  • 公式法、Power Query、VBA 皆可指定欄位。

Q3:替換後如何驗證結果?

  • 可用 COUNTIF 函數統計「-」出現次數,確認是否已全數轉換。
    =COUNTIF(A:A, "-")
  • 檢查運算結果是否異常(如加總、平均值)。

Q4:替換對公式/統計有何影響?

  • 破折號轉為 0 後,能正確參與數值運算。
  • 若原本用於標示缺值,統計時需留意是否會影響分析邏輯。

Q5:不同 Excel 版本有差異嗎?

  • Power Query 於較舊版本需額外安裝,現代版本已內建。
  • 其他方法大致通用。

結論與最佳實務建議

將破折號(-)轉換為數字 0,是確保 Excel 數據正確運算的關鍵步驟。
小量、臨時處理:建議用尋找和替換。
需保留原始資料、局部處理:公式法最彈性。
大量、重複性高:Power Query 可自動化批次處理。
自動化需求:VBA 可大幅提升效率,但須注意安全。

若你在團隊協作、專案管理或大量數據處理時,想要提升效率與自動化程度,建議可搭配 Monday.comClickUp 等現代協作平台,這些工具支援 Excel 整合與自動化流程,能進一步簡化資料清理與管理工作。

延伸:如何將 0 顯示為破折號?

有時用戶會有反向需求——將數字 0 顯示為破折號(-)。這可透過自訂格式實現:

  1. 選取目標儲存格。
  2. 右鍵選擇「儲存格格式」>「自訂」。
  3. 輸入格式:
    0;-0;"-"
    代表正數顯示數字,負數顯示負號,0 則顯示破折號。

此方式僅改變顯示,不影響實際數值,適用於會計報表等特殊需求。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

✨ 讓專案管理變簡單,團隊更強大!

在專案推進的每一步,效率就是競爭力。monday.com 整合進度追蹤、團隊協作與資源分配,讓你隨時掌握全局、快速解決問題。
全球18萬家專業團隊已經採用,你還在等什麼?