MS Excel 使用多维查找

MS Excel 使用多维查找

你好,我试图分配一个值,如果我有一个与第 1 列匹配的值,它将搜索并尝试检查该特定行的产品变量是否小于指定的值。

假设我有 colA_Var = 109 和 rowB_Var = 12。如果值存在,我将搜索第一列,然后我需要比较我的 rowB_Var 是否小于第 109 行中的值。因此它将返回 11.8,因为它小于 12。另一个例子是,如果我有 colA_Var = 179 和 rowB_Var = 55,它将返回值 44 和 50 或其中之一。到目前为止,我已经尝试了下面的公式,但它不起作用。这只能使用 Excel 函数来完成,因为不允许使用 VM 宏。

= LOOKUP(Var_Const!D6,D_Male!$A$2:$A$84,D_Male!$B$2:$L$84)

Sample Data in Excel

108.0   11.6    12.9    15.2    16.5    18.1    20.0    22.1    23.1    25.1    27.0
109.0   11.8    13.1    15.6    16.9    18.5    20.3    22.6    23.9    25.7    27.5
178.0   43.5    49.2    55.9    62.0    68.5    74.5    81.0    87.0    93.2    100.0
179.0   43.8    49.7    56.0    62.5    69.0    75.2    81.3    87.3    94.0    100.8
180.0   44.0    50.0    56.2    62.7    69.5    76.0    82.0    88.0    94.5    101.2

答案1

  • L1C2 中的 Var_A
  • L2C2 中的 Var_B
  • L3C2 中的结果
  • L5C1:L9C11 中的值

我的公式是

=HLOOKUP(L2C2,INDIRECT(ADDRESS(4+MATCH(L1C2,L5C1:L9C1),2)&":"&ADDRESS(4+MATCH(L1C2,L5C1:L9C1),11)),1,TRUE)

解释:根据Var_A的值查找相应的行,构造一个只有一行的数组的引用,在其中查找Var_B的值。

答案2

我建议这个功能:

=HLOOKUP(A8,INDEX(B1:K5,MATCH(A7,A1:A5,0),0),1)

在此处输入图片描述

INDEX(B1:K5,MATCH(A7,A1:A5,0),0)Var_B返回要查找的行。

然后HLOOKUP寻找小于的值Var_B

相关内容