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

取得欄或列中的第一個非空白值(忽略錯誤值)
取得欄或列中的第一個非空白值(包含錯誤值)
取得欄或列中的第一個非空白值(忽略錯誤值)
如上圖所示,若要擷取清單中第一個非空白值並忽略錯誤值,可將 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))

公式說明
=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 的 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 for Excel 擁有超過 300 項功能,確保您所需的功能僅需一鍵即可取得……
Office Tab -在 Microsoft Office(包含 Excel)中啟用分頁式閱讀與編輯
- 一秒內在數十份開啟的文件間快速切換!
- 每天為您減少數百次滑鼠點擊,遠離滑鼠手困擾。
- 在檢視與編輯多份文件時,讓您的生產力提升高達 50%。
- 為 Office(包含 Excel)帶來如 Chrome、Edge 與 Firefox 般的高效能分頁體驗。