如何在Excel中刪除單元格中的非數字字元?


儘管Excel是用於資料組織和分析的強大工具,但我們偶爾處理的資料可能雜亂無章,並且包含妨礙我們計算和分析的額外字元。幸運的是,Excel有許多方法可以有效地清理資料;在本文中,我們將重點介紹如何從單元格中刪除非數字字元。

在繼續介紹方法之前,讓我們首先了解刪除非數字字元的重要性。在處理混合資料型別資料集(數字、文字、符號等)時,可能存在您只需要數值的情況。例如,在處理財務資料、銷售資料或任何其他數值計算時,您可能希望刪除單元格中的任何非數字元件,以便提供正確的結果。

從單元格中刪除非數字字元

在這裡,我們將首先建立一個VBA模組,然後執行它來完成任務。所以讓我們來看一個簡單的過程,學習如何在Excel中刪除單元格中的非數字字元。

步驟1

考慮一個Excel工作表,其中工作表中的資料類似於下圖。

首先,右鍵單擊工作表名稱,然後選擇“檢視程式碼”以開啟VBA應用程式。

右鍵單擊 > 檢視程式碼。

步驟2

然後單擊“插入”,選擇“模組”,然後將以下程式碼複製到文字框中。

插入 > 模組 > 複製。

程式碼

Sub RemoveNotNum()
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "Remove Non Numeric"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
   xOut = ""
   For i = 1 To Len(Rng.Value)
      xTemp = Mid(Rng.Value, i, 1)
      If xTemp Like "[0-9]" Then
         xStr = xTemp
      Else
         xStr = ""
      End If
      xOut = xOut & xStr
   Next i
   Rng.Value = xOut
Next
End Sub

步驟3

然後單擊F5執行模組。然後選擇單元格範圍並單擊“確定”以完成任務。然後您將看到非數字字元將被刪除。

F5 > 選擇單元格 > 確定

這就是如何在Excel中刪除非數字字元的方法。

注意

如果數字包含小數,請使用以下VBA程式碼。

程式碼

Sub RemoveNotNum()
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "Remove Non Numeric"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
   xOut = ""
   For i = 1 To Len(Rng.Value)
      xTemp = Mid(Rng.Value, i, 1)
      If xTemp Like "[0-9.]" Then
         xStr = xTemp
      Else
         xStr = ""
      End If
      xOut = xOut & xStr
   Next i
   Rng.Value = xOut
Next
End Sub

結論

在本教程中,我們使用了一個簡單的示例來演示如何在Excel中從單元格中刪除非數字字元,以突出顯示特定資料集。

更新於: 2023年9月8日

285 次檢視

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告