Skip to main content

根據條件查找最長的文本字符串

Author: Amanda Li Last Modified: 2025-05-12

在本教程中,我們將討論如何借助 INDEXMATCHLEN 和 MAX 函數,在 Excel 中查找符合條件的列或行中最長的文本字符串。

find longest text string with criteria 1

如何在 Excel 中根據條件找到最長的測試字符串?

要快速找到來自美國且名字最長的人(在上述名稱範圍內列出),結合 INDEX、MATCH、LEN 和 MAX 函數的公式將以這種方式幫助您:MAX 函數將檢索 LEN 函數提供的字符串長度範圍內的最大值。然後 MATCH 將定位範圍內第一個最長值的位置,而 INDEX 將檢索相應位置的值。

通用語法

=INDEX(返回範圍,MATCH(MAX(LEN(返回範圍)*(條件範圍=條件值)),LEN(返回範圍)*(條件範圍=條件值),0))

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

  • 返回範圍:您希望組合公式從中返回最長名稱的範圍。這裡指的是名稱範圍。
  • 條件範圍:列出條件的範圍。這裡指的是國家範圍。
  • 條件值:您設定的條件。

要找到來自美國且名字最長的人,請在單元格 F6 中複製或輸入以下公式,然後按 Ctrl + Shift + Enter 獲得結果:

=INDEX(B5:B11,MATCH(MAX(LEN(B5:B11)*(C5:C11="美國")),LEN(B5:B11)*(C5:C11="美國"),0))

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

=INDEX(B5:B11,MATCH(MAX(LEN(B5:B11)*(C5:C11=F5)),LEN(B5:B11)*(C5:C11=F5),0))

find longest text string with criteria 2

公式解釋

=INDEX(B5:B11,MATCH(MAX(LEN(B5:B11)*(C5:C11=F5)),LEN(B5:B11)*(C5:C11=F5),0))

  • LEN(B5:B11)*(C5:C11=F5)LEN 函數返回 B5:B11 中每個名稱長度的數組,如下所示:{5;5;6;3;4;8;5};部分 (C5:C11=F5) 檢查C5:C11 範圍內的每個值是否等於F5 中的值,並生成如下數組:{FALSE;FALSE;TRUE;FALSE;TRUE;FALSE;TRUE},由於它將被乘法運算,因此會轉換為 {0;0;1;0;1;0;1}。這是我們在乘法後得到的結果:{0;0;6;0;4;0;5}
  • MAX(MAX(LEN(B5:B11)*(C5:C11=F5))) = MAX(MAX({0;0;6;0;4;0;5})) MAX 函數隨後從數組 {0;0;6;0;4;0;5} 中返回最大值,即 6
  • MATCH(MATCH(MAX(LEN(B5:B11)*(C5:C11=F5)LEN(B5:B11)*(C5:C11=F5)),,LEN(B5:B11)*(C5:C11=F5)LEN(B5:B11)*(C5:C11=F5),0),0) = MATCH(MATCH(6,,{0;0;6;0;4;0;5},0),0) 匹配類型 0 強制 MATCH 函數在數組 {0;0;6;0;4;0;5} 中找到第一個完全匹配的數字 6 的位置。因此,它返回 3,因為該數字位於第 3 位。
  • INDEX(B5:B11B5:B11,,,MATCH(MAX(LEN(B5:B11)*(C5:C11=F5)LEN(B5:B11)*(C5:C11=F5))),,,LEN(B5:B11)*(C5:C11=F5)LEN(B5:B11)*(C5:C11=F5),0))) = INDEX(B5:B11B5:B11,,,3): INDEX 函數返回名稱範圍 B5:B11 中的第 3 個值,即 Oliver

相關函數

Excel INDEX 函數

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

Excel MATCH 函數

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

Excel LEN 函數

LEN 函數返回文本字符串中的字符數。


相關公式

查找列或行中最長或最短的文本字符串

要在 Excel 中查找列或行中最長或最短的文本字符串,您可以一起使用 INDEX、MATCH、LEN 和 MAX 或 MIN 函數。

使用 INDEX 和 MATCH 進行近似匹配

有時我們需要在 Excel 中找到近似匹配,以評估員工的表現、給學生打分、根據重量計算郵費等。在本教程中,我們將討論如何使用 INDEX 和 MATCH 函數來獲取我們需要的結果。

根據多個條件查找最接近的匹配值

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


最佳的辦公生產力工具

Kutools for Excel - 幫助您脫穎而出

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

Kutools for Excel 擁有超過 300 種功能,確保您需要的功能只需點擊一下即可實現...


Office Tab - 啟用 Microsoft Office(包括 Excel)中的分頁閱讀和編輯功能

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