【问题标题】:Excel - find smallest difference between value and list, and associated indexExcel - 查找值和列表之间的最小差异以及相关索引
【发布时间】:2014-06-20 10:52:05
【问题描述】:

我在 Excel 中有 2 个值列表(B2:B5002 和 K2:26)。对于 K 列中的每个值,我需要在 B 列中找到最接近的值,然后在 A 列中返回相应的数字。

我已经弄清楚如何找到 B 列和 K 列中的值之间的最小差异,但我现在不知道如何从 A 列中获取相应的值。

这是我已有的示例:

    A   B      K   
    1   7.55   9
    2   9.33   3
    3   1.05   7
    4   2.38
    5   6.22

我希望 L 列返回 2、4、1(A 中的值对应于 B 中最接近的值)。到目前为止,我已经在 L 列中使用了这段代码来找到最小的差异:

    =MIN(ABS($B$1:$B$5-$L1))

然后我按 CTRL+SHFT+ENTER 使其成为一个数组公式,然后将其拖到 L 列的其他行中。我不知道该怎么做才能从 A 中获取与这些相对应的数字差异!有人可以帮忙吗?

我只是想我会提到我在 Matlab 中做得很好,但我试图在 Excel 中为无法使用 Matlab 的学生做同样的事情。他们可以手动完成,但我想为他们节省一些时间。

【问题讨论】:

  • 你可以使用 MATCH()INDEX()

标签: excel excel-formula


【解决方案1】:

L2中输入数组公式:

=INDEX(A$2:A$5002,MATCH(MIN(ABS(B$2:B$5002-K2)),ABS(B$2:B$5002-K2),0))

复制下来

数组公式必须使用 Ctrl + Shift + Enter 而不仅仅是 Enter 键。

你应该看到什么:

【讨论】:

  • 非常感谢,这正是我想要的 :D 我读过关于使用索引和匹配的内容,但无法确切知道我需要做什么才能得到我想要的。
猜你喜欢
  • 2015-11-12
  • 2020-09-17
  • 2020-09-12
  • 1970-01-01
  • 1970-01-01
  • 2015-06-27
  • 2019-10-08
  • 1970-01-01
  • 2013-11-22
相关资源
最近更新 更多