Excel 字串擷取數字詳細教學

在本教學中,我們將指導您如何使用Excel公式來擷取字串中的數字,不論是常用函數MID、LEFT、RIGHT還是進階的REGEX與VBA,每個步驟都清楚示範,讓您輕鬆掌握數據處理技巧。

Excel中字串擷取數字的教學

在Excel中,處理包含文字與數字的複雜字串時,常常需要從中擷取出數字部分。這篇教學將介紹幾種在Excel中擷取數字的方法,包括使用函數與VBA程式碼。

使用內建函數擷取數字

利用Excel內建的函數組合,我們可以輕鬆地從字串中萃取出數字。以下是一些常用的函數,以及如何用這些函數來達成我們的目標。

使用MID函數與ISNUMBER函數

假設我們的字串在A1儲存格中,我們可以使用以下公式來萃取字串中的數字:

步驟如下:

  1. 首先,我們需要將字串中的每一個字符單獨擷取出來。這可以通過MID函數來完成。
  2. 其次,使用ISNUMBER函數來檢查每一個字符是否為數字。
  3. 最後,將所有的數字字符聯接起來形成最終的結果。

具體的公式如下:

=TEXTJOIN("", TRUE, IF(ISNUMBER(VALUE(MID(A1, ROW(INDIRECT("1:" & LEN(A1))), 1))), MID(A1, ROW(INDIRECT("1:" & LEN(A1))), 1), ""))

以上公式是一個陣列公式,因此在Excel中輸入時需要按Ctrl+Shift+Enter來完成輸入。

使用VBA程式碼擷取數字

除了使用內建函數,也可以透過VBA (Visual Basic for Applications) 來擷取字串中的數字。VBA提供了更強大的字串處理能力,適合處理更為複雜的需求。

自訂VBA函數

以下是一個簡單的VBA程式碼範例,用來從字串中擷取數字:

Function ExtractNumbers(str As String) As String
    Dim i As Integer
    Dim result As String
    
    result = ""
    
    For i = 1 To Len(str)
        If Mid(str, i, 1) Like "[0-9]" Then
            result = result & Mid(str, i, 1)
        End If
    Next i
    
    ExtractNumbers = result
End Function

使用說明:

  1. 打開Excel工作簿,按下Alt + F11鍵打開VBA編輯器。
  2. 在VBA編輯器中,插入一個新模組(插入 => 模組)。
  3. 將上述代碼複製並粘貼到新建的模組中。
  4. 回到Excel工作表,然後可以通過輸入公式=ExtractNumbers(A1)來調用這個自訂函數。

總結

通過本文介紹的方法,無論是使用Excel內建函數還是VBA程式碼,都可以有效地從字串中擷取出數字。在處理包含文字與數字的字串時,這些技巧能夠大大提高工作效率。根據實際情況選擇適合自己的方法,便能夠輕鬆完成字串中數字的萃取工作。

發佈留言

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