如何查询矩阵的多个值并接收值

问题描述 投票:0回答:2

我对 Excel 有点迷茫。我有两个价值观

  • 长度
  • 体重

我正在寻找以下问题的解决方案:

从输入值中取出

length
weight
,在矩阵中找到下一个 upper 值,并从值列中接收
value
。如果我的输入没有上限值,我想有一个后备并始终使用值
1.0
.

如何解决这个问题?

我有一个矩阵,里面有这些值:

excel
2个回答
1
投票

你可以试试:

=IFERROR(INDEX(SORT(SORT(FILTER(MATRIX, (LENGTHS>length)*(WEIGHTS>weight)),1,1),2,1),1,3),1)

,其中 MATRIX、LENGTHS 和 WEIGHTS 是指右侧的数据,而长度和重量是指包含 80 和 450 的单元格。

刚刚看到你说 H6 就是我所说的长度 - 如果是这样的话:

=IFERROR(INDEX(SORT(SORT(FILTER(K6:M11, (K6:K11>H6)*(L6:L11>H7)),1,1),2,1),1,3),1)

在H8.


0
投票

您可以使用

XMATCH
获取下一个值,如下所示:

=LET(f, FILTER(D2:F7, D2:D7>B1), 
 IFNA(INDEX(INDEX(f,,3), XMATCH(B2, INDEX(f,,2),1)), 1))

如果想对长度条件不满足时的错误进行处理,可以修改如下:

=LET(f, FILTER(D2:F7, D2:D7>B1, ""), IF(@f="", "No match for length condition",
IFNA(INDEX(INDEX(f,,3),XMATCH(B2, INDEX(f,,2),1)), 1)))
© www.soinside.com 2019 - 2024. All rights reserved.