在多个号码之间搜索

在多个号码之间搜索

我有一张这样的桌子:

+-----------+-----------+------------+------------+----+
| Size from | Size till | Price From | Price Till | Product ID |
+-----------+-----------+------------+------------+----+
|        50 |        52 |       10.0 |       15.0 |  1 |
|        50 |        52 |       16.0 |       20.0 |  2 |
|        48 |        50 |       12.0 |       16.0 |  3 |
|        50 |        52 |        8.0 |        9.0 |  4 |
+-----------+-----------+------------+------------+----+

现在我的主表中只有 2 行:A1 = 尺寸,B1 = 价格,C1 = 结果产品 ID

A1和B1是我自己填写的。

我无法找到正确的公式来查找产品 ID。我想在其中搜索尺寸介于“尺寸从”、“尺寸到”之间以及价格介于“价格从”、“价格到”之间的 ID。目前,我使用多个IF(A1=<Table2!A1 & A1=>Table2!A2 & B2 ...

只要我没有更多值,这种方法就有效,实际上我想包含更多参数,这会导致函数太长。有什么想法吗?

答案1

对于您的查询条件,需要基于查找公式,以检查范围内的条件。

为了解决这个问题,我使用了您的示例数据。请在下面检查。

在此处输入图片描述

数据范围是 A54:E57。

标准范围是 A62:B62。

标准是尺寸 49 和价格 15

公式在单元格中D62

=LOOKUP(2,1/($A$54:$A$57<=A62)/($B$54:$B$57>=A62)/($C$54:$C$57<=B62)/($D$54:$D$57>=B62),($E$54:$E$57))

注意:根据您的需要调整数据范围。

答案2

这取决于 A 列和 B 列单元格的值如何影响产品 ID。哪些特征在所有情况下都会影响产品 ID?

例如,如果产品 ID 是 A 乘以 B 加上某个常数,则可以编写如下公式:

=$A1*$B1+42例如这样做。您可以单击单元格的角落,然后拖动到下面的单元格以将公式复制到下一行。(同样,您必须更改它以满足您的需求,我不知道您的具体情况。)从编程术语上讲,以下操作的区别如下:

if (x == 0) y = 3;
if (x == 1) y = 4;
if (x == 2) y = 5;

...并且正在做...

y = x + 3;

如果不知道确切的公式,我无法给出完整的公式并解决您的问题,但创建这些公式(和编程)通常与模式识别有关。如果没有更具体的信息,我无法给出更具体的答案。

相关内容