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

取得欄或列中的第一個非空白值

作者Amanda Li修改日期

若要從單欄或單列範圍中擷取第一個值(即首個非空白儲存格,並忽略錯誤值),可使用結合 INDEXMATCH 函數的公式。若您不希望忽略範圍中的錯誤值,只需在上述公式中加入 ISBLANK 函數即可。

取得欄位第 1 列中的第一個非空白值

取得欄或列中的第一個非空白值(忽略錯誤值)
取得欄或列中的第一個非空白值(包含錯誤值)


取得欄或列中的第一個非空白值(忽略錯誤值)

如上圖所示,若要擷取清單中第一個非空白值忽略錯誤值,可將 INDEX 函數嵌入 MATCH 函數內,以「INDEX((range 0),0)」找出所有非空白儲存格,再透過 MATCH 函數定位第一個非空白儲存格的位置,並將該位置傳回給外層的 INDEX 函數,即可精準擷取對應值。

通用語法

=INDEX()range,MATCH(TRUE,INDEX(()))range<>0),0),0))

  • range:用於傳回指定欄或列範圍中第一個非空白儲存格(包含文字或數值),並自動忽略錯誤值。

若要擷取清單中忽略錯誤值的第一個非空白值,請複製或在儲存格 E4 中輸入下方公式,然後按下 Enter 以取得結果:

=INDEX()B4:B15,MATCH(TRUE,INDEX(()))B4:B150),0),0))

取得欄位第 2 列中的第一個非空白值

公式說明

=INDEX(B4:B15,)MATCH(TRUE,)INDEX((B4:B15<>0),0),0))

  • INDEX((B4:B150),0) 此程式碼片段會評估範圍 B4:B15 中的每個值:若儲存格為空白,則傳回 FALSE;若包含錯誤值,則直接傳回該錯誤;若包含數值或文字,則傳回 TRUE。由於此 INDEX 公式的 row_num 引數設為 0,因此會針對整欄傳回以下陣列:{FALSE;#REF!;TRUE;TRUE;FALSE;FALSE;TRUE;FALSE;TRUE;TRUE;FALSE;TRUE}
  • MATCH(TRUE,)INDEX((B4:B150),0),0)=MATCH(TRUE,){FALSE;#REF!;TRUE;TRUE;FALSE;FALSE;TRUE;FALSE;TRUE;TRUE;FALSE;TRUE},0)match_type 0 強制 MATCH 函數傳回陣列中第一個完全相符的 TRUE 位置,因此此函數將傳回 3.
  • INDEX(B4:B15,)MATCH(TRUE,)INDEX((B4:B150),0),0)) = INDEX(B4:B15,3): 接著,INDEX 函數會傳回範圍 B4:B15 中的第 3 個值,即 extendoffice

取得欄或列中的第一個非空白值(包含錯誤值)

若要擷取清單中包含錯誤值的第一個非空白值,只需使用 ISBLANK 函數檢查清單中的儲存格是否為空白。接著,INDEX 會根據 MATCH 提供的位置傳回第一個非空白值。

通用語法

=INDEX()range,MATCH(FALSE,ISBLANK())range),0))

√ 注意:這是陣列公式,除 Excel 365 與 Excel 2021 外,皆需按 Ctrl + Shift + Enter 輸入。

  • range:用於傳回第一個非空白儲存格(包含文字、數值或錯誤值)的單一欄或列範圍。

若要擷取清單中包含錯誤值的第一個非空白值,請複製或在儲存格 E7 中輸入下方公式,然後按下 Ctrl + Shift + Enter 以取得結果:

=INDEX()B4:B15,MATCH(FALSE,ISBLANK())B4:B15),0))

公式說明

=INDEX(B4:B15,)MATCH(FALSE,)ISBLANK(B4:B15),0))

  • ISBLANK(B4:B15)ISBLANK 函數會檢查範圍 B4:B15 中的儲存格是否為空白:若為空白,則傳回 TRUE;否則傳回 FALSE。因此,此函數會產生如下陣列:{TRUE;FALSE;FALSE;FALSE;TRUE;TRUE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE}
  • MATCH(FALSE,)ISBLANK(B4:B15),0)=MATCH(FALSE,){TRUE;FALSE;FALSE;FALSE;TRUE;TRUE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE},0)match_type 0 強制 MATCH 函數傳回陣列中第一個完全相符的 FALSE 位置,因此此函數將傳回 2.
  • INDEX(B4:B15,)MATCH(FALSE,)ISBLANK(B4:B15),0)) = INDEX(B4:B15,2): 接著,INDEX 函數會傳回範圍 B4:B15 中的第 2 個值,即 #REF!

相關函數

Excel INDEX 函數

Excel INDEX 函數會根據指定的位置,從範圍或陣列中傳回顯示值。

Excel MATCH 函數

Excel 的 MATCH 函數會在指定的儲存格範圍中搜尋特定值,並傳回該值的相對位置。


相關公式

搭配 INDEX 與 MATCH 使用

若要在 Excel 中快速查詢特定產品、電影或人物等相關資訊,善用 INDEX 與 MATCH 函數的組合將是您的最佳選擇。

取得欄中的第一個文字值

若要從單欄範圍中擷取第一個文字值,可使用結合 INDEX 與 MATCH 函數的公式,或採用基於 VLOOKUP 函數的公式。

使用萬用字元定位第一個部分相符項目

有時您需要在 Excel 的數值範圍中找出第一個部分符合特定數字的項目位置。此時,結合萬用字元星號(*,可比對任意數量字元)的 MATCH 與 TEXT 函數便能派上用場。若您還想知道該位置的確切數值,只需將 INDEX 函數加入公式中即可。

查詢第一個部分相符的數字

有時您需要在 Excel 的數值範圍中找出第一個與特定數字部分相符的項目位置。此時,結合萬用字元星號(*,可比對任意數量字元)的 MATCH 與 TEXT 函數就能派上用場。若您還想取得該位置的確切數值,只要再將 INDEX 函數加入公式即可。


最佳 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 般的高效能分頁體驗。