如何在 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 提供了实用的 Select Special Cells 功能,可快速选出所有与目标值相差在指定范围内的数值。
例如,假设你的目标值为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 助手:以智能执行为基础,彻底革新数据分析 |代码生成 |自定义公式创建|数据分析与图表生成 |调用Kutools函数…… |
热门功能:查找、选中项的背景色或标记重复项 | 删除空行 | 合并列或单元格且不丢失数据 | 四舍五入…… | |
高级LOOKUP:多条件VLookup|多值VLookup|多表查找|模糊查找…… | |
高级下拉列表:快速创建下拉列表 |依赖下拉列表 | 多选下拉列表…… | |
列管理器: 添加指定数量的列 | 移动列 | 切换隐藏列的可见状态 | 比较区域与列…… | |
特色功能:网格聚焦 |设计视图 | 增强编辑栏 | 工作簿及工作表管理器 | 资源库(自动文本) | 日期提取 | 合并数据 | 加密/解密单元格 | 按名单发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体/倾斜/删除线等)…… | |
15大工具集:12项 文本工具(添加文本、删除特定字符等)|50+种 图表 类型(甘特图等)|40+实用 公式(基于生日计算年龄等)|19项 插入工具(插入二维码、从路径插入图片等)|12项 转换工具(小写金额转大写、汇率转换等)|7项 合并与分割工具(高级合并行、分割单元格等)| …… |
通过Kutools for Excel提升您的Excel技能,体验前所未有的高效办公。 Kutools for Excel提供300多项高级功能,助您提升效率并节省时间。 点击此处获取您最需要的功能……
Office Tab为Office带来多标签界面,让您的工作更加轻松
- 支持在Word、Excel、PowerPoint中进行多标签编辑与阅读。
- 在同一个窗口的新标签页中打开和创建多个文档,而不是分多个窗口。
- 可提升50%的工作效率,每天为您减少数百次鼠标点击!
所有Kutools加载项,一键安装
Kutools for Office套件包含Excel、Word、Outlook和PowerPoint的插件,以及Office Tab Pro,非常适合跨Office应用团队使用。





- 全能套装——Excel、Word、Outlook和PowerPoint插件+Office Tab Pro
- 单一安装包、单一授权——数分钟即可完成设置(支持MSI)
- 协同更高效——提升Office应用间的整体工作效率
- 30天全功能试用——无需注册,无需信用卡
- 超高性价比——比单独购买更实惠