KutoolsforOffice — 一套方案,五大工具。事半功倍。三月特賣:20% 折扣

如何在 Excel 中隱藏特定的錯誤值?

作者Amanda Li修改日期

假設您的 Excel 工作表中包含錯誤值,而您不打算修正,只想將其隱藏。我們先前已介紹過如何在 Excel 中隱藏所有錯誤值,但若您僅希望隱藏特定的錯誤值,又該如何操作呢?在本教學中,我們將為您示範以下三種方法,輕鬆達成此目標。

隱藏特定錯誤值的螢幕截圖


透過 VBA 將文字設為白色以隱藏多個特定的錯誤值

我們已準備兩段 VBA 程式碼,能協助您快速將選取範圍內或跨多個工作表中的特定錯誤值文字顏色設為白色,輕鬆隱藏這些錯誤。請依照下列步驟操作,並根據您的需求執行對應的程式碼。

1. 在您的 Excel 中,按下「Alt」+「F11」鍵,即可開啟「Microsoft Visual Basic for Applications」視窗。

2. 按一下「插入」>「模組」,然後將下列任一 VBA 程式碼貼上至「模組」視窗中。
Excel 模組視窗中 VBA 程式碼的螢幕截圖

VBA 程式碼 1:在選擇區域中隱藏多個特定的錯誤值

Sub HideSpecificErrors_SelectedRange()
  'Updated by ExtendOffice 20220824
Dim xRg As Range
Dim xFindStr As String
Dim xFindRg As Range
Dim xARg As Range
Dim xURg As Range
Dim xFindRgs As Range
Dim xFAddress As String
Dim xBol As Boolean
Dim xJ

xArrFinStr = Array("#DIV/0!”, “#N/A”, “#NAME?") 'Enter the errors to hide, enclose each with double quotes and separate them with commas

On Error Resume Next
Set xRg = Application.InputBox("Please select the range that includes the errors to hide:", "Kutools for Excel", , Type:=8)
If xRg Is Nothing Then Exit Sub

xBol = False
For Each xARg In xRg.Areas
    Set xFindRg = Nothing
    Set xFindRgs = Nothing
    Set xURg = Application.Intersect(xARg, xARg.Worksheet.UsedRange)
    For Each xFindRg In xURg
        For xJ = LBound(xArrFinStr) To UBound(xArrFinStr)
            If xFindRg.Text = xArrFinStr(xJ) Then
                xBol = True
                If xFindRgs Is Nothing Then
                    Set xFindRgs = xFindRg
                Else
                    Set xFindRgs = Application.Union(xFindRgs, xFindRg)
                End If
            End If
        Next
    Next
    If Not xFindRgs Is Nothing Then
        xFindRgs.Font.ThemeColor = xlThemeColorDark1
        
    End If
Next
If xBol Then
    MsgBox "Successfully hidden."
Else
     MsgBox "No specified errors were found."
End If
End Sub

注意:在第 12 列的程式碼片段「xArrFinStr = Array(“#DIV/【【PH_78】】!“, “#N/A“, “#NAME?“)」中,請將「#DIV/0!」、「#N/A」和「#NAME?」替換為您要隱藏的實際錯誤值,並確保每個值都以雙引號括住,且以逗號分隔。

VBA 程式碼 2:跨多個工作表隱藏多個特定的錯誤值

Sub HideSpecificErrors_WorkSheets()
'Updated by ExtendOffice 20220824
Dim xRg As Range
Dim xFindStr As String
Dim xFindRg As Range
Dim xARg, xFindRgs As Range
Dim xWShs As Worksheets
Dim xWSh As Worksheet
Dim xWb As Workbook
Dim xURg As Range
Dim xFAddress As String
Dim xArr, xArrFinStr
Dim xI, xJ
Dim xBol As Boolean
xArr = Array("Sheet1", "Sheet2") 'Names of the sheets where to find and hide the errors. Enclose each with double quotes and separate them with commas
xArrFinStr = Array("#DIV/0!", "#N/A", "#NAME?") 'Enter the errors to hide, enclose each with double quotes and separate them with commas
'On Error Resume Next
Set xWb = Application.ActiveWorkbook
xBol = False
For xI = LBound(xArr) To UBound(xArr)
    Set xWSh = xWb.Worksheets(xArr(xI))
    Set xFindRg = Nothing
    xWSh.Activate
    Set xFindRgs = Nothing

    Set xURg = xWSh.UsedRange
    Set xFindRgs = Nothing
    For Each xFindRg In xURg
        For xJ = LBound(xArrFinStr) To UBound(xArrFinStr)
            If xFindRg.Text = xArrFinStr(xJ) Then
                xBol = True
                If xFindRgs Is Nothing Then
                    Set xFindRgs = xFindRg
                Else
                    Set xFindRgs = Application.Union(xFindRgs, xFindRg)
                End If
            End If
        Next
    Next
    If Not xFindRgs Is Nothing Then
        xFindRgs.Font.ThemeColor = xlThemeColorDark1
        
    End If
Next
If xBol Then
    MsgBox "Successfully hidden."
Else
     MsgBox "No specified errors were found."
End If
End Sub
注意事項:
  • 在第 15 列的程式碼片段「xArr = Array("Sheet 1", "Sheet 2“)」中,請將「Sheet 1」和「Sheet 2」替換為您實際要隱藏錯誤的工作表名稱。記得每個工作表名稱都必須用雙引號括起來,並以逗號分隔。
  • 在第 16 列的程式碼片段「xArrFinStr = Array(“#DIV/【【PH_81】】!“, “#N/A“, “#NAME?“)」中,請將「#DIV/0!」、「#N/A」和「#NAME?」替換為您要隱藏的實際錯誤值,並確保每個錯誤值都以雙引號括住,且以逗號分隔。

3. 按下「F5」鍵,立即執行 VBA 程式碼!

注意:若您使用了「VBA 程式碼 1」,將會彈出一個對話方塊,要求您選取要搜尋並刪除錯誤值的範圍。您也可以按一下工作表標籤以選取整個工作表。

4. 如下方所示的對話方塊將彈出,通知您已成功隱藏指定的錯誤值。請按一下「確定」以關閉對話方塊。
確認已成功隱藏指定錯誤值的對話框螢幕截圖

5. 所有指定的錯誤值均已一併隱藏。
隱藏特定錯誤值的螢幕截圖


使用格式化顯示錯誤訊息嚮導功能將特定的錯誤值取代為其他值

若您不熟悉 VBA 程式碼,Kutools for Excel 的「格式化顯示錯誤訊息嚮導」功能可輕鬆幫您找出所有錯誤值、所有 #N/A 錯誤,或除 #N/A 以外的其他錯誤,並替換為您指定的數值。立即閱讀,了解如何快速完成此任務!

Kutools for Excel 提供超過 300 項進階功能,簡化複雜作業,提升創造力與效率。整合 AI 功能,Kutools 能精準自動化各項任務,讓資料管理輕鬆無負擔。Kutools for Excel 的詳細資訊……         免費試用……

1. 在「Kutools」索引標籤的「公式」群組中,點選「更多」>「格式化顯示錯誤訊息嚮導」。
Excel 中 Kutools 索引標籤上的「錯誤條件精靈」選項螢幕截圖

2. 在彈出的「格式化顯示錯誤訊息嚮導」對話方塊中,請執行下列操作:
  • 在「範圍」框中,點選範圍選取按鈕,即可選取欲隱藏錯誤的儲存格範圍。
    注意:若要在整個工作表中搜尋,請點選工作表標籤。
  • 在「錯誤類型」區段中,指定您要隱藏的錯誤值。
  • 在「錯誤訊息顯示為」區段中,選擇您要用來取代錯誤值的顯示方式。
「錯誤條件精靈」對話框的螢幕截圖

3. 按一下「確定」,指定的錯誤值將根據您選擇的選項顯示。
使用 Kutools「錯誤條件精靈」取代錯誤值後的 Excel 工作表螢幕截圖

Kutools for Excel-透過超過 300 項必備工具全面強化 Excel,讓您的工作更快速、更輕鬆,並運用 AI 功能實現更聰明的資料處理與高效生產力!立即取得


使用公式將特定錯誤取代為其他值

若要取代特定的錯誤值,Excel 的 IFIFNAERROR.TYPE 函數可助您一臂之力!但在此之前,請先掌握每個錯誤值對應的數字代碼。

# Error公式傳回
#NULL!=ERROR.TYPE(#NULL!)1
#DIV/0!=ERROR.TYPE(#DIV/0!)2
#VALUE!=ERROR.TYPE(#VALUE!)3
#REF!=ERROR.TYPE(#REF!)4
#NAME?=ERROR.TYPE(#NAME?)5
#NUM!=ERROR.TYPE(#NUM!)6
#N/A=ERROR.TYPE(#N/A)7
#GETTING_DATA=ERROR.TYPE(#GETTING_DATA)8
#SPILL!=ERROR.TYPE(#SPILL!)9
#UNKNOWN!=ERROR.TYPE(#UNKNOWN!)12
#FIELD!=ERROR.TYPE(#FIELD!)13
#CALC!=ERROR.TYPE(#CALC!)14
其他錯誤=ERROR.TYPE(123)#N/A

包含數值與錯誤的清單螢幕截圖

例如,您有一張如上所示的資料表。若要將「#DIV/0!」錯誤替換為文字字串「Divide By Zero Error」,請先找出該錯誤對應的代碼「2」,然後在儲存格 B2 中輸入下列公式,並向下拖曳填滿控點,將公式套用至下方的儲存格:

=IF(IFNA(ERROR.TYPE(A2),A2)=2,"Divide By Zero Error",A2)

#DIV/0! 錯誤被取代為「除以零錯誤」的螢幕截圖

注意事項:
  • 在公式中,您可以將錯誤代碼「2」替換為對應其他錯誤值的代碼。
  • 在公式中,您可以將文字字串「Divide By Zero Error」替換為其他提示訊息,或改用「““」以空白儲存格取代錯誤。

相關文章

如何在 Excel 中隱藏所有錯誤值?

當您在 Excel 工作表中操作時,是否曾遇到如 #DIV/0、#REF、#N/A 等錯誤值?這些通常是由公式問題所引起。現在,您想快速又輕鬆地隱藏工作表中的所有這類錯誤值,該如何在 Excel 中實現?

如何在 Excel 中將 #DIV/0! 錯誤轉換成易讀的提示訊息?

有時在 Excel 中使用公式計算時,可能會出現錯誤訊息。例如,公式 =A1/B1 在 B1 為空或等於 0 時,就會顯示 #DIV/0! 錯誤。有辦法讓這些錯誤訊息變得更清晰易讀嗎?或者,若您希望用其他自訂訊息取代錯誤,該如何操作?

如何在 Excel 中刪除欄位時避免出現 #REF! 錯誤?

當您在儲存格中參照另一個儲存格時,若所參照的列已被刪除(如下方截圖所示),該儲存格將顯示 #REF! 錯誤。接下來,我將說明如何避免 #REF! 錯誤,並在刪除列時自動改為參照下一個儲存格。

如何在 Excel 中醒目提示所有錯誤儲存格?

當您在工作表中建立公式時,難免會遇到錯誤值。您是否希望一次醒目標示出所有包含錯誤值的儲存格?Excel 的「條件式格式設定」功能正是為此而生,能輕鬆幫您達成目標!

最佳 Office 生產力工具

🤖KUTOOLS AI 助手:基於以下內容徹底革新數據分析:智慧執行     產生程式碼  建立自訂公式    分析資料並產生圖表  呼叫增強函數……
熱門功能尋找、醒目提示或標記重複值     刪除空白行     合併列或儲存格而不遺失資料     不使用公式的四捨五入……
高級 LOOKUP多重條件 VLookup    多重數值 VLookup     跨多個工作表 VLookup      模糊查找……
高級下拉列表快速建立下拉式清單     相依式下拉式清單     多選下拉式清單……
欄位管理員新增指定數量的欄位移動欄位切換隱藏欄位的可見狀態比較範圍與欄位……
精選功能網格聚焦     設計視圖   增強編輯欄    工作簿與工作表管理員     資源庫(自動文字)  日期提取     合併工作表    加密/解密儲存格    依清單傳送電子郵件     超級篩選      特殊篩選(篩選粗體儲存格/斜體/刪除線……) ......
頂尖 15 工具組12 文字工具添加文本刪除特定字符,……)   50+ 圖表 類型甘特圖,……)   40+ 實用公式基於生日計算年齡,……)   19 插入工具插入二維碼從路徑插入圖片,……)   12 轉換工具金額轉大寫匯率轉換,……)   7 合併和拆分工具高級合併行分割儲存格,……)……以及更多
在您的慣用語言中使用 Kutools—支援英文、西班牙文、德文、法文、中文及另外 40+ 種語言!

運用 Kutools for Excel 強化您的 Excel 技能,體驗前所未有的高效能!Kutools for Excel 提供超過 300 項進階功能,大幅提升生產力並節省寶貴時間。立即點擊,取得您最需要的功能……


Office Tab 為 Office 帶來分頁式介面,讓您的工作更輕鬆自在!

  • 在 Word、Excel、PowerPoint 中啟用分頁式編輯與閱讀功能,以及 Access、Visio 與 Project。
  • 在同視窗的新分頁中開啟並建立多份文件,而非另開新視窗。
  • 每天為您提升 50% 的工作效率,並省下數百次滑鼠點擊!

所有 Kutools 增益集,一個安裝程式

Kutools for Office 套件整合了 Excel、Word、Outlook 與 PowerPoint 的增益集,以及 Office Tab Pro,非常適合需要跨多個 Office 應用程式協作的團隊使用!

ExcelWordOutlookTabsPowerPoint
  • 全能套件— 包含 Excel、Word、Outlook 與 PowerPoint 增益集,以及 Office Tab Pro
  • 一個安裝程式,一個授權— 數分鐘內即可完成設定(支援 MSI)
  • 協同運作更出色— 在多個 Office 應用程式間實現流暢的生產力體驗
  • 30 天完整功能試用— 無需註冊,無需信用卡
  • 超值之選— 比單獨購買各增益集更省費用