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

從文字字串中剝離或移除數字字元

作者Xiaoyang修改日期

如果您想從純文字字串清單中移除所有數字,同時保留其他非數字字元,Excel 提供了一些實用公式可協助您輕鬆達成!

doc-remove-numbers-1


在 Excel 中從文字字串剝離或移除所有數字

若要僅從字母數字字串中移除數字,可使用結合 TEXTJOIN、MID、ROW、IF、ISERR、LEN 與 INDIRECT 函數的複雜陣列公式來實現。注意:此公式僅適用於 Excel 2019 與 Office 365. 通用語法如下:

=TEXTJOIN("",TRUE,IF(ISERR(MID(text,ROW(INDIRECT("1:"&LEN(text))),1)+0),MID(text,ROW(INDIRECT("1:"&LEN(text))),1),""))
  • text 您要從中移除所有數字的文字字串或儲存格內容。

1. 請將下方公式複製或輸入至您欲顯示結果的空白儲存格中:

=TEXTJOIN("",TRUE,IF(ISERR(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)+0),MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1),""))

2. 接著同時按下 Ctrl + Shift + Enter 鍵,即可取得第一個結果,請參閱截圖:

doc-remove-numbers-2

3. 接著選取公式儲存格,向下拖曳填滿控點至欲套用的儲存格範圍,即可將所有數字從文字字串中提取出來,請參閱截圖:

doc-remove-numbers-3


公式說明:

ROW(INDIRECT("1:"&LEN(A2))):ROW 函數中的 INDIRECT 函數會傳回一個陣列清單,其長度等於儲存格 A2 的字元數(如下所示)。此陣列在 MID 函數中作為 start_num 參數使用。
{1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20;21}

MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1):此 MID 函數用於提取文本從儲存格 A2 中一次提取一個字元,並傳回如下所示的陣列:
{ "5";"0";"0";" ";"K";"u";"t";"o";"o";"l";"s";" ";"f";"o";"r";" ";"E";"x";"c";"e";"l"}

MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)+0:在此陣列後加上 0 值,可強制將文字轉換為數字;數字文字值會轉為數字,而非數字值則會顯示為 #VALUE 錯誤值,如下所示:
{"5";"0";"0";#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE! !;#VALUE! !;#VALUE!...}

IF(ISERR(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)+0),MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1),""):IF 函數用於判斷 MID 函數所傳回的陣列是否為錯誤值。若為錯誤值,則透過第二個 MID 函數提取非數字字元;否則傳回空字串,結果如下所示:
{ "";"";"";" ";"K";"u";"t";"o";"o";"l";"s";" ";"f";"o";"r";" ";"E";"x";"c";"e";"l"}

TEXTJOIN("",TRUE,IF(ISERR(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)+0),MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1),"")):最後,TEXTJOIN 函數會串接所有非空值,忽略空字串,取得最終結果。


注意事項:

1. 移除數字字元時,可能會留下多餘的空格;若要一併清除所有額外空格,請將公式包覆在 TRIM 函數中,如下所示:

=TRIM(TEXTJOIN("",TRUE,IF(ISERR(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)+0),MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1),"")))

2. 若要在舊版 Excel 中從文字字串中移除數字,請使用下列公式:

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,1,""),2,""),3,""),4,""),5,""),6,""),7,""),8,""),9,""),0,"")

doc-remove-numbers-4


相關函數:

  • TEXTJOIN
  • TEXTJOIN 函數能將列、欄或儲存格範圍中的多個值,以您指定的分隔符號輕鬆串接成單一文字。
  • MID
  • MID 函數可從指定文字字串的中間位置,精準提取並傳回特定數量的字元。
  • ROW
  • Excel 的 ROW 函數會傳回指定參照所在的工作表列號。
  • INDIRECT
  • Excel 的 INDIRECT 函數能將文字字串轉換為有效的儲存格參照。
  • LEN
  • LEN 函數會傳回文字字串中的字元數量。
  • IF
  • IF 函數會執行簡單的邏輯測試,並根據比較結果傳回一個值(當結果為 TRUE 時)或另一個值(當結果為 FALSE 時)。
  • ISERR
  • ISERR 函數會針對除 #N/A 錯誤以外的所有錯誤類型傳回 TRUE。

更多文章:


最佳 Office 生產力工具

Kutools for Excel -助您脫穎而出

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

Kutools for Excel 擁有超過 300 項功能,確保您所需的功能僅需一鍵即可取得……


Office Tab -在 Microsoft Office(包含 Excel)中啟用分頁式閱讀與編輯

  • 一秒內在數十份開啟的文件間快速切換!
  • 每天為您減少數百次滑鼠點擊,遠離滑鼠手困擾。
  • 在檢視與編輯多份文件時,讓您的生產力提升高達 50%。
  • 為 Office(包含 Excel)帶來如 Chrome、Edge 與 Firefox 般的高效能分頁體驗。