Hello,大家好,有粉丝问到这样一个问题:如何根据已经知道的价格,来找到最近接这个价格的商品?这个问题估计很多人第一次看到都觉得无从下手,其实这个问题并不难,就是一个简单的数据查询的问题,下面就让我们来看下公式是如何设置的吧
一、思路
想要求一个数最近接的值,其实就是求目标值与这个数差值的绝对值,绝对值最小的差值对应的就是最接近数值,求得最近接的数值之后,我们只需要利用index+match函数来引用数据即可。这个就是他的计算思路
在这里求绝对值我们可以使用ABS函数,求最小的绝对值可以使用MIN函数,下面就让我们来看下这个公式是如何设置的吧
二、公式设置
为了方便大家理解公式,我将公式拆分为2步来演示,最后会将这2步嵌套在一起组成,废话不多说,让我们直接开始吧
1.求绝对值
首先我们需要在数据的后面设置一个辅助列,将公式设置为:=ABS(B2-$E$2),
在这里B2-$E$2这个结果有正数也有负数,所以我们需要使用ABS函数来求一下差值的绝对值,这个E2就是价格所在的位置
2.提取最小值,设置公式
现在我们只需要将数据区域中的最小值提取出来,将其最为查找值随后利用index+match来查找数据即可,提取最小值我们需要用到min函数
提取最小值的公式为:=MIN(C2:C16),提取结果在表格中F2的位置
计算对应商品的公式为:=INDEX(A1:A16,MATCH(F2,C1:C16,0)),这样的话就能提取到正确的结果
最后我们将公式嵌套组合在一起公式为:=INDEX(A2:A16,MATCH(MIN(ABS(B2:B16-E2)),ABS(B2:B16-E2),0)),这是一个数组公式,我们需要按Ctrl+shift+回车三建填充公式即可,如果这个公式你觉得太难的话,按照上面分布计算也是可以的
以上就是今天分享的全部内容,怎么样?你学会了吗?