Skip to main content

查找第一個部分匹配的數字

Author: Amanda Li Last Modified: 2025-08-06

在某些情況下,您需要獲取包含特定數字的部分匹配在Excel中某個數值範圍內的第一個位置。在這種情況下,結合使用MATCHTEXT公式以及星號(*)——這是一種可以匹配任意數量字符的萬用字元——將對您有所幫助。如果您還需要知道該位置上的確切值,則可以在公式中添加INDEX函數。

first partial match number 1

獲取第一個部分匹配數字的位置
檢索第一個部分匹配的數字


獲取第一個部分匹配數字的位置

要從上面所示的數字範圍中獲取包含“345”的第一個部分匹配數字的位置,MATCH和TEXT公式加上萬用字元將以這種方式幫助您:為了匹配任何包含345的數字,您需要將數字345放在兩個星號(*)之間。然而,此操作會將數值轉換為文本值。因此,您必須使用TEXT函數將數字範圍中的數字轉換為文本。只有這樣,MATCH函數才能正確找到部分匹配的位置。

通用語法

=MATCH("*"&number&"*",TEXT(lookup_array,"0"),0)

√ 注意:這是一個陣列公式,需要您使用Ctrl + Shift + Enter來輸入。

  • number: 您指定用於查找其第一個部分匹配的數字。
  • lookup_array: 要從中檢索第一個部分匹配位置的數值範圍。

要獲取包含“345”的第一個匹配數字的位置,請將以下公式複製或輸入到單元格E6中,然後按Ctrl + Shift + Enter以獲得結果:

=MATCH("*"&345&"*",TEXT(B5:B16,"0"),0)

或者,使用單元格引用使公式動態化:

=MATCH("*"&E5&"*",TEXT(B5:B16,"0"),0)

√ 注意:要將單元格引用/數字與文本連接在一起,您必須在它們之間添加&符號(&)。並且文本應該用雙引號括起來。

first partial match number 2

公式解釋

=INDEX("*"&345&"*",TEXT(B5:B16,"0"),0)

  • TEXT(B5:B16,"0"): TEXT函數將B5:B16中的所有數值轉換為帶有格式代碼“0”的文本。因此,我們將得到如下文本陣列:{"56445";"21354";"84265";"54342";"34545";"45632";"87954";"68546";"34567";"75681";"33587";"16467"}
    點擊這裡了解更多關於TEXT函數的信息
  • INDEX("*"&345&"*",TEXT(B5:B16,"0"),0) = INDEX("*"&345&"*",{"56445";"21354";"84265";"54342";"34545";"45632";"87954";"68546";"34567";"75681";"33587";"16467"},0): 查找值 "*"&345&"*" 可以匹配任何包含字符串“345”的文本字符串,無論345在文本字符串中的哪個位置。match_type 0要求MATCH函數在陣列中找到第一個完全匹配的查找值的位置。因此,MATCH將返回5

檢索第一個部分匹配的數字

要根據MATCH提供的位置檢索第一個部分匹配的數字,如下面所示,我們可以聚焦於INDEX函數。

first partial match number 3

通用語法

=INDEX(MATCH(return_range,"*"&number&"*",TEXT(lookup_array,"0"),0))

√ 注意:這是一個陣列公式,需要您使用Ctrl + Shift + Enter來輸入。

  • return_range: 您希望組合公式從中返回第一個部分匹配的範圍。
  • number: 您指定用於查找其第一個部分匹配的數字。
  • lookup_array: 要從中檢索第一個部分匹配的數值範圍。

要獲取 包含“345”的第一個匹配數字,請將以下公式複製或輸入到單元格E7中,然後按Ctrl + Shift + Enter以獲得結果:

=INDEX(MATCH(B5:B16,"*"&345&"*",TEXT(B5:B16,"0"),0))

或者,使用單元格引用使公式動態化:

=INDEX(MATCH(B5:B16,"*"&E5&"*",TEXT(B5:B16,"0"),0))

first partial match number 4

公式解釋

=INDEX(B5:B16,MATCH("*"&E5&"*",TEXT(B5:B16,"0"),0))

  • MATCH("*"&E5&"*",TEXT(B5:B16,"0"),0) = 5: 點擊查看詳細過程
  • INDEX(B5:B16B5:B16,MATCH("*"&E5&"*",TEXT(B5:B16,"0"),0)) = INDEX(B5:B16B5:B16,5): INDEX函數返回返回範圍B5:B16中的第5個值,即34545

相關函數

Excel MATCH函數

Excel MATCH函數在一個單元格範圍內搜索特定值,並返回該值的相對位置。

Excel TEXT函數

TEXT函數將值轉換為帶有指定格式的文本。

Excel INDEX函數

Excel INDEX函數根據給定的位置從範圍或陣列中返回顯示的值。


相關公式

使用萬用字元定位第一個部分匹配

要在Excel中獲取包含特定文本字符串的部分匹配在某個範圍內的第一個位置,您可以使用帶有萬用字元的MATCH公式——星號(*)和問號(?)。

查找最接近的匹配

要在Excel中查找數值數據集中查找值的最接近匹配,您可以一起使用INDEX、MATCH、ABS和MIN函數。

基於多個條件查找最接近的匹配值

在某些情況下,您可能需要根據多個條件查找最接近或近似匹配值。通過結合使用INDEX、MATCH和IF函數,您可以快速在Excel中完成此操作。

基於多個條件的雙向近似匹配

在本教程中,我們將討論如何在Excel電子表格中根據列和行中列出的多個條件查找近似匹配,借助INDEX、MATCH和IF函數的幫助。


最佳的辦公生產力工具

Kutools for Excel - 幫助您脫穎而出

🤖 KUTOOLS AI 助手:基於以下方式徹底改變數據分析:智能執行   |  生成代碼  |  創建自訂公式  |  分析數據並生成圖表  |  調用 KUTOOLS 函數
熱門功能查找、標記或標識重複值  |  刪除空行  |  合併列或單元格而不丟失數據  |  無需公式四捨五入 ...
超級 VLookup多條件  |  多值  |  跨多工作表  |  模糊查找...
高級下拉列表簡易下拉列表  |  依賴下拉列表  |  多選下拉列表...
列管理器添加特定數量的列  |  移動列  |  切換隱藏列的可見狀態  比較列以選擇相同和不同的單元格 ...
特色功能網格聚焦  |  設計檢視  |  增強編輯欄  |  工作簿與工作表管理器 | 資源庫 (自動文字)  |  日期提取器  |  合併資料  |  加密/解密單元格  |  按清單發送電子郵件  |  超級篩選  |  特殊篩選(篩選粗體/斜體/刪除線...) ...
頂級 15 個工具集12 個文本工具添加文本刪除特定字符 ...)  |  50+ 種圖表 類型甘特圖 ...)  |  40+ 實用 公式基於生日計算年齡 ...)  |  19 個插入工具插入QR碼從路徑插入圖片 ...)  |  12 個轉換工具金額轉大寫匯率轉換 ...)  |  7 個合併與分割工具高級合併行拆分Excel單元格 ...)  |  ... 及更多
使用您偏好的語言來操作 Kutools——支持英語、西班牙語、德語、法語、中文等 40 多種語言!

Kutools for Excel 擁有超過 300 項功能,確保您需要的功能只需一鍵即可觸及...


Office Tab - 在 Microsoft Office(包括 Excel)中啟用多標籤閱讀和編輯

  • 一秒鐘內在數十個打開的文檔之間切換!
  • 每天為您減少數百次鼠標點擊,告別滑鼠手。
  • 在查看和編輯多個文檔時,提升您的效率達 50%。
  • 為 Office(包括 Excel)帶來高效的標籤功能,就像 Chrome、Edge 和 Firefox 一樣。