如何在 Excel 中找出最接近或最近的數值?
在數據分析或報表製作中,經常需要從某一欄位或一組數值中找出最接近指定目標值的項目。雖然 Excel 未內建「尋找最接近值」函數,但我們仍可透過公式、VBA、條件格式或第三方工具來實現此需求。本文將介紹幾種常見方法,深入解析各方法的基本原理、操作步驟及其優缺點,協助您選出最適合的解決方案。
使用陣列公式找出最接近或最近的數字
假設您在 B 欄有一組數字,想快速找出其中最接近特定數值(例如 18)的項目。透過 Excel 的陣列公式,您無需手動逐一檢查清單,就能高效鎖定該數值!
首先,選取一個空白儲存格並輸入下列公式。輸入完畢後,務必按下 Ctrl + Shift + Enter,而非僅按 Enter 鍵,才能確保公式以陣列公式執行——這是其正確運作的必要條件:
=INDEX(B3:B22,MATCH(MIN(ABS(B3:B22-E2)),ABS(B3:B22-E2),0)) - B3:B22 指的是您要檢查資料所在的範圍。
- E2 是您輸入目標值(例如 18)的儲存格。
此方法最適用於需從連續範圍中取得單一最接近數值的情境,在多數重視數值準確性與完全匹配的場合皆能發揮出色效果。但請注意:陣列公式處理極大資料集時可能消耗較多系統資源。若您遭遇效能瓶頸,或出現 #VALUE!等錯誤訊息,請務必重新確認儲存格參照,並確保正確按下 Ctrl + Shift + Enter!
使用 Kutools for Excel 輕鬆選取與指定值偏差範圍內的所有最接近數字
有時您需要的不只是最接近目標值的單一數字,而是希望選取所有落在指定偏差範圍內的數值。Kutools for Excel 透過其選取特殊儲存格功能,提供了一個高效實用的解決方案,能快速選取與目標值差距在指定範圍內的所有數字!
舉例來說,假設您的目標值為 18,且已設定偏差值為 2,這表示您希望選取範圍內介於 16(18-2)到 20(18+2)之間的所有數值。以下是詳細的操作步驟:
1. 選取您要搜尋的範圍(例如 B3:B22),然後前往 Kutools > 選取 > 選擇指定單元格。
2. 在選擇指定儲存格對話方塊中:
- 在選擇類型下,選取儲存格。
- 在指定類型:
-將第一個下拉列表設為大於等於,並在方框中輸入 16.
-將第二個下拉列表設為小於等於,並輸入 20.

3. 按一下確定以執行。Kutools 將立即通知您符合條件的儲存格數量,並標示出指定偏差範圍內的所有最接近數值,如下圖所示:
此解決方案極適合快速大量識別鄰近數值,尤其在處理具有可變容差的廣泛範圍時表現出色。請注意,選取結果的準確度取決於偏差值的精確設定——若偏差範圍過窄,可能遺漏相關數據;若過寬,則可能混入不需要的數值。
使用 VBA 巨集尋找最接近目標值的數值
對於需要自動化處理,或需在多個工作表及大型資料集中針對數值或文字資料執行自訂化最接近值搜尋的使用者來說,VBA 巨集是一種高效且靈活的解決方案。透過編寫程式,讓 Excel 系統性地比對目標值與所有候選值之間的差異,不僅能精準找出最接近的數字,還能根據文字距離識別出最相近的字串。
此方法在需要整合自動化時特別有利,尤其適用於手動方式難以處理的大範圍作業,或需反覆執行的任務。但請注意,VBA 巨集必須啟用巨集功能,並具備基本的 VBA 環境操作知識。執行任何巨集前,務必先備份資料,以防意外遺失。
1. 按一下開發人員 > Visual Basic。在 Microsoft Visual Basic for Applications 視窗中,按一下插入 > 模組,並將下列程式碼複製到模組中:
Function FindClosest(rng As Range, target As Double) As Double
Dim cell As Range
Dim minDiff As Double
Dim closestValue As Double
minDiff = 1E+99
For Each cell In rng
If Abs(cell.Value - target) < minDiff Then
minDiff = Abs(cell.Value - target)
closestValue = cell.Value
End If
Next cell
FindClosest = closestValue
End Function
2. 接著,在您的工作表中切換至空白儲存格,並輸入下列公式:=FindClosest(B3:B22, E2),按下 ENTER 鍵即可立即取得最接近的數值!
使用使用條件格式視覺化標示最接近的數值
在檢閱或呈現資料時,若能直接以視覺化方式識別最接近目標值的數值,無需篩選或重新排序資料,往往事半功倍!Excel 內建的使用條件格式功能,可立即標示出最接近目標值的儲存格,讓重點一目了然。雖然此方法不會直接回傳確切數值,卻能在快速數據分析與視覺強調上發揮極大效用!
此方法的主要優勢在於其非破壞性且具動態效果的標示方式,能隨資料或目標值的變動自動調整,特別適合應用於儀表板、簡報及審閱等高度重視可視性的場景。然而,若有多個數值的「接近程度」相同,其精確度可能下降,且無法輸出數值以供後續處理。
1. 選取您要分析的儲存格範圍(例如 B3:B22)。
2. 在開始索引標籤上,按一下使用條件格式 > 新增規則。
3. 在對話方塊中選擇使用公式來決定要格式化的儲存格,接著於公式欄位中輸入下列公式:
=ABS(B3-$E$2)=MIN(ABS($B$3:$B$22-$E$2)) 4. 點選格式,選擇標示顏色後,按一下確定,再點一次確定以套用規則。
這將標示出您所選區域中所有與 E2 儲存格內目標值最接近的儲存格。
若您處理的是大型範圍或得到非預期結果,請再次確認參照是否正確,並確保絕對/相對參照設定符合需求(運用「$」符號鎖定目標儲存格與範圍)。
示範:選取與指定值偏差範圍內的所有最接近數值
最佳 Office 生產力工具
| 🤖 | KUTOOLS AI 助手:基於以下內容徹底革新數據分析:智慧執行 | 產生程式碼| 建立自訂公式 | 分析資料並產生圖表| 呼叫增強函數…… |
| 熱門功能:尋找、醒目提示或標記重複值 | 刪除空白行 | 合併列或儲存格而不遺失資料 | 不使用公式的四捨五入…… | |
| 高級 LOOKUP:多重條件 VLookup | 多重數值 VLookup | 跨多個工作表 VLookup | 模糊查找…… | |
| 高級下拉列表:快速建立下拉式清單 | 相依式下拉式清單 | 多選下拉式清單…… | |
| 欄位管理員:新增指定數量的欄位|移動欄位|切換隱藏欄位的可見狀態|比較範圍與欄位…… | |
| 精選功能:網格聚焦 | 設計視圖 |增強編輯欄 | 工作簿與工作表管理員 | 資源庫(自動文字)| 日期提取 | 合併工作表 | 加密/解密儲存格 | 依清單傳送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體儲存格/斜體/刪除線……) ...... | |
| 頂尖 15 工具組:12 文字工具(添加文本,刪除特定字符,……)| 50+ 圖表 類型(甘特圖,……)| 40+ 實用公式(基於生日計算年齡,……)| 19 插入工具(插入二維碼,從路徑插入圖片,……)| 12 轉換工具(金額轉大寫,匯率轉換,……)| 7 合併和拆分工具(高級合併行,分割儲存格,……)|……以及更多 |
運用 Kutools for Excel 強化您的 Excel 技能,體驗前所未有的高效能!Kutools for Excel 提供超過 300 項進階功能,大幅提升生產力並節省寶貴時間。立即點擊,取得您最需要的功能……
Office Tab 為 Office 帶來分頁式介面,讓您的工作更輕鬆自在!
- 在 Word、Excel、PowerPoint 中啟用分頁式編輯與閱讀功能,以及 Access、Visio 與 Project。
- 在同視窗的新分頁中開啟並建立多份文件,而非另開新視窗。
- 每天為您提升 50% 的工作效率,並省下數百次滑鼠點擊!
所有 Kutools 增益集,一個安裝程式
Kutools for Office 套件整合了 Excel、Word、Outlook 與 PowerPoint 的增益集,以及 Office Tab Pro,非常適合需要跨多個 Office 應用程式協作的團隊使用!
- 全能套件— 包含 Excel、Word、Outlook 與 PowerPoint 增益集,以及 Office Tab Pro
- 一個安裝程式,一個授權— 數分鐘內即可完成設定(支援 MSI)
- 協同運作更出色— 在多個 Office 應用程式間實現流暢的生產力體驗
- 30 天完整功能試用— 無需註冊,無需信用卡
- 超值之選— 比單獨購買各增益集更省費用