【问题标题】:Return the value to the Left where the min is found将值返回到找到最小值的左侧
【发布时间】:2021-03-15 15:46:56
【问题描述】:

正如标题所述,我试图在找到min() 返回的值的左侧找到值。我的数据布局如下所示,我要从中提取的列是 TP,因此对于行 Labor (L) = 1,在 LRATC 部分下,TP 值应该是 ATC 值左侧的值找到7.5,即10

我尝试使用=INDEX((J5,L5,N5,P5),MATCH(MIN(K5,M5,O5,Q5),(K5,M5,O5,Q5),0)) 创建一个范围供其使用,但这会导致#N/A 错误似乎在MATCH() 操作中。

编辑和澄清:如果您想自己测试一下,这里是原始文件Hey! Click Me!。这篇文章的目的是在网上有一个地方可以记录这个问题,因为它不容易从通常的嫌疑人那里找到。我主要是想解决上面提到的match()调用中的错误

【问题讨论】:

  • 首先测试 match() 以获得有效输出。一旦可行,然后使用 index() 进行测试。
  • Match() 结果给出了一个位置,所以通常 index() 需要一个范围...
  • @SolarMike 单独匹配会产生 N/A 错误我得到
  • 然后检查match(),范围是否正确?目标设置是否正确?一旦你解决了这个问题,你就可以继续前进。

标签: excel excel-formula match lookup


【解决方案1】:

好吧,你没有提供我可以复制和测试的数据,但我把一些东西放在一起:

K5 L5 M5 N5 O5 P5 Q5

2 22 3 33 4 44 5

并使用:

=MATCH(MIN(K5,M5,O5,Q5),(K5:Q5),0)

在 K5:Q5 范围内的位置 1 中返回 1。

至于 index(),这是可行的,但你需要一个“+1”来获得你想要的值:

=INDEX(K5:Q5,,MATCH(MIN(K5,M5,O5,Q5),(K5:Q5),0)+1)

注意 match() 被放入 index() 函数的列参数中。

这会返回应有的结果 22。

我会重组数据,因为这可能不稳定(垂直工作...),但这只是我自己。

【讨论】:

  • @calebcapps 就像我展示的那样,你真的测试过吗?我什至展示了我必须构建的数据,因为您没有提供示例数据(图片不算数)。
  • 这可行,但在找到的单元格的右侧,以防其他人遇到此问题,我只是将 +1 更改为 -1
猜你喜欢
  • 2021-04-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-21
  • 2021-10-19
相关资源
最近更新 更多