Skip to main content

如何返回一行或一列中的第一個/最後一個非空白儲存格?

Author: Xiaoyang Last Modified: 2025-08-06

在日常的 Excel 工作中,經常會遇到僅部分儲存格包含值,而其他儲存格為空白的數據集。通常,您可能需要快速識別特定行或列中第一個或最後一個有值的儲存格。對於少量數據這很容易,但在較長的行或列中,手動查找這些值則變得低效、耗時且容易出錯。

有幾種實用的方法可以高效地檢索行或列中的第一個或最後一個非空白儲存格值,幫助您自動化此任務並節省寶貴時間。下面,您將找到基於公式及其他實用解決方案,適用於不同實際場景,包括處理動態數據範圍或大型數據集。

使用公式返回行或列中的第一個非空白儲存格

使用公式返回行或列中的最後一個非空白儲存格

使用 VBA 宏返回第一個或最後一個非空白儲存格值

使用 Excel 的篩選功能查找第一個或最後一個非空白儲存格


arrow blue right bubble 使用公式返回行或列中的第一個非空白儲存格

要從一行或一列中提取第一個包含數據的儲存格,您可以結合使用 INDEXMATCH 函數。當您希望以程式方式檢索該值時,這種方法非常有用,並且在底層數據變化時也能保持工作表的動態性。以下是具體操作:

1. 在數據範圍旁邊的空白儲存格中輸入以下公式:

=INDEX(A1:A13,MATCH(TRUE,INDEX((A1:A13<>0),0),0))

例如,如果您的數據位於 A1 到 A13 的儲存格中,此公式將返回第一個非空白且非零的儲存格。請參閱以下示例:

apply a formula to return the first non blank cell

2. 按下 Enter 鍵。範圍內第一個非空白(或根據公式邏輯非零)的儲存格值將顯示如下:

press Enter key to get the result

注意與提示:

  • 在上述公式中,您可以調整 A1:A13 來引用任何列或引用一行(例如,1:1 表示第 1 行,B2:M2 表示某一行的部分範圍)。
  • 此方法可可靠地應用於單行或單列。對於表格或多選範圍,建議對每一行或每一列分別應用公式。
  • 如果公式返回錯誤(#N/A),請再次檢查您的範圍是否至少包含一個非空白且非零的儲存格。
  • 請記住,對於真正的空白(""),如果您只想忽略空儲存格而不是零,可以將 <>0 替換為 <>""
a screenshot of kutools for excel ai

使用 Kutools AI 解鎖 Excel 的魔法

  • 智能執行:執行單元格操作、分析數據並創建圖表——所有這些都由簡單的指令驅動。
  • 自訂公式:生成量身定制的公式,簡化您的工作流程。
  • VBA 編碼:輕鬆編寫和實現 VBA 代碼。
  • 公式解釋:輕鬆理解複雜的公式。
  • 文本翻譯:打破電子表格中的語言障礙。
通過人工智能工具增強您的 Excel 能力。立即下載,體驗前所未有的效率!

arrow blue right bubble 使用公式返回行或列中的最後一個非空白儲存格

要從給定範圍中獲取最後一個非空白儲存格的值,基於陣列的 LOOKUP 公式提供了一種高效且直接的解決方案,特別適合於動態或變化的數據。這對於自動識別列表或摘要表中的最新數據條目尤為有用。

1. 在目標範圍旁邊的空白儲存格中輸入以下公式:

=LOOKUP(2,1/(A1:A13<>""),A1:A13)

此公式掃描指定範圍並返回最後一個非空儲存格的值。例如,使用 A1:A13 作為範圍:

apply a formula to return the last non blank cell

2。按下 Enter後,Excel 將計算並顯示最後一個非空白儲存格中的值:
press Enter key to get the result

注意與建議:

  • 您可以將此公式應用於任何單列或單行(B1:B20F8:F302:2 等)。根據需要更新範圍引用。
  • 如果您的數據包含想忽略的零,您可以將 A1:A13<>"" 替換為 A1:A13<>0,但請確保真正的空白和零符合您的意圖。
  • 此方法最適合用於簡單的數據範圍。對於公式返回 ""(空文本)的範圍,此公式將這些儲存格視為空白。
  • 如果所有儲存格均為空白,公式將返回 #N/A 錯誤。

arrow blue right bubble 使用 VBA 宏返回第一個或最後一個非空白儲存格值

對於處理大型數據集或需要自動化重複任務的用戶,簡單的 VBA 宏可以極大地簡化流程——尤其是在範圍多樣或涉及多行多列的情況下。與公式不同,VBA 可執行按需操作,如查找第一個或最後一個非空白儲存格,非常適合跨多個範圍進行重複操作。

1. 通過進入開發工具 > Visual Basic 打開 VBA 編輯器。在出現的 VBA 視窗中,點擊 插入 > 模組,並將以下程序之一粘貼到模組視窗中:

查找所選範圍內第一個非空白儲存格的宏:

Sub FindFirstNonBlankCell()
    Dim rng As Range
    Dim cell As Range
    Dim firstValue As Variant
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set rng = Application.Selection
    Set rng = Application.InputBox("Select range", xTitleId, rng.Address, Type:=8)
    
    firstValue = ""
    
    For Each cell In rng
        If cell.Value <> "" Then
            firstValue = cell.Value
            Exit For
        End If
    Next cell
    
    If firstValue <> "" Then
        MsgBox "The first non blank cell value is: " & firstValue, vbInformation, xTitleId
    Else
        MsgBox "No non blank cells found.", vbExclamation, xTitleId
    End If
End Sub

同樣,以下是查找最後一個非空白儲存格的代碼:

Sub FindLastNonBlankCell()
    Dim rng As Range
    Dim cell As Range
    Dim lastValue As Variant
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set rng = Application.Selection
    Set rng = Application.InputBox("Select range", xTitleId, rng.Address, Type:=8)
    
    lastValue = ""
    
    For Each cell In rng
        If cell.Value <> "" Then
            lastValue = cell.Value
        End If
    Next cell
    
    If lastValue <> "" Then
        MsgBox "The last non blank cell value is: " & lastValue, vbInformation, xTitleId
    Else
        MsgBox "No non blank cells found.", vbExclamation, xTitleId
    End If
End Sub

2。要執行代碼,點擊 執行 按鈕 Run button 在 VBA 編輯器中。系統將提示您選擇目標範圍以搜索非空白儲存格。完成選擇並確認後,對話框將根據您運行的宏顯示第一個或最後一個非空白儲存格的值。

  • 這些宏靈活且適用於行和列,不論數據大小。
  • VBA 支持自動化和可重複處理,非常適合頻繁或大規模的任務。
  • 運行宏時,請務必保存您的工作簿並根據需要啟用宏。始終在樣本數據上測試以驗證準確性,然後再應用到重要數據。

arrow blue right bubble 使用 Excel 的篩選功能查找第一個或最後一個非空白儲存格

對於需要快速視覺化方式識別非空白值的用戶——特別是面對大量列數據時,Excel 內置的篩選功能可以幫助您快速聚焦非空白條目。雖然此方法不會自動將值返回到另一個儲存格,但在數據分析期間進行審查或導航時非常有效。

以下是通過篩選視覺化定位第一個或最後一個非空白儲存格的方法:

  1. 選擇包含數據的列或行。您可以選擇整個列(例如,點擊列字母)以便更方便地進行篩選。
  2. 點擊 數據 選項卡,然後選擇 篩選。
  3. 點擊範圍或表格標題中的小篩選箭頭。
  4. 取消勾選 (空白) 選項,使得只有填充值的儲存格保持可見。
  5. 篩選後,列頂部第一個可見的值即為您的第一個非空白儲存格;向下滾動即可看到最後一個。

優勢: 篩選方法快速,無需公式,即使對於包含數千行的列也能很好地工作。
劣勢: 該解決方案僅限於視覺效果——它不會將結果輸出到儲存格,也不支持像公式和 VBA 一樣的自動化。不過,它非常適合手動檢查、審查和互動式數據探索。

疑難排解與建議:
如果篩選似乎不起作用,請確保您沒有僅選擇部分數據,因為這可能會導致篩選應用錯誤。完成後,點擊 數據 > 清除 以恢復完整的數據視圖。


最佳 Office 辦公效率工具

🤖 Kutools AI Aide:徹底革新數據分析,基於智能執行|生成程式碼|創建自訂公式|分析數據並生成圖表|調用 Kutools Functions
熱門功能查找、選取項目的背景色或標記重複值 | 刪除空行 | 合併列或單元格且不丟失資料 | 四捨五入...
高級 LOOKUP多條件查找|多值查找|多表查找|模糊查找...
高級下拉列表快速創建下拉列表 | 關聯下拉列表 | 多選下拉列表 ...
列管理器添加指定數量的列 | 移動列 | 切換隱藏列的可見狀態 | 區域與列比較 ...
精選功能網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿及工作表管理器 | 資源庫 (自動文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按清單發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/傾斜/刪除線 ...)...
前15 大工具集12 款文本工具添加文本刪除特定字符,...)|50+ 種圖表 類型甘特圖,...)|40+ 實用 公式基於生日計算年齡,...)|19 款插入工具插入QR码按路徑插入圖片,...)|12 款轉換工具金額轉大寫匯率轉換,...)|7 款合併和分割工具高級合併行分割儲存格,...)| ...以及更多
使用 Kutools 支援你的語言——支援英語、西班牙語、德語、法語、中文及40 多種語言!

利用 Kutools for Excel 大幅提升你的 Excel 技能,感受前所未有的高效體驗。 Kutools for Excel 提供超過300 項高級功能,助你提升效率並保存時間。 點此查看你最需要的功能...


Office Tab 為 Office 帶來標籤式介面,讓你的工作更加輕鬆

  • 啟用 Word、Excel、PowerPoint 的標籤式編輯和閱讀功能
  • 在同一個視窗的標籤中打開和創建多個文件,而不是在新窗口中分開開啟。
  • 可提升你50% 的工作效率,每天為你大量減少滑鼠點擊次數!