带条件的Excel公式最高值

带条件的Excel公式最高值,excel,formula,Excel,Formula,我有一个包含价格表的表格,包括文本、型号和价格。该列表按价格表降序排列。范例 PriceList Model Price 0740 A 10 0740 B 20 0740 C 30 0735 A 9 0735 B 19 0735 C 29 0731 A 8 0731 B 18 0731 C 28 0731 D 38

我有一个包含价格表的表格,包括文本、型号和价格。该列表按价格表降序排列。范例

PriceList Model Price
0740      A     10
0740      B     20
0740      C     30
0735      A     9
0735      B     19
0735      C     29
0731      A     8
0731      B     18
0731      C     28
0731      D     38
如您所见,D型已随价格表0732停产。 我需要一个公式,给我以下

Requested   Relevant    Latest
PriceList   Model       PriceList
                        Available
0735         A          0735           
0735         B          0735
0735         C          0735
0735         D          0731

我需要上一个可用价格表列的公式。公式应执行以下操作:如果相关模型存在请求的价目表,则将其写入字段,如果不返回包含模型的最新价目表,,我们需要做的是在不匹配时使价目表小于请求的值。最简单的方法是将值设为零

我放入A15:C19的第二个表

首先,我们需要在MAX公式中构建比较:

=MAX($A$2:$A$11*$B$2:$B$11=B16*$A$2:$A$11<=A16)
接下来,我们需要将所有真/假转换为0/1进行乘法:

=MAX($A$2:$A$11*--($B$2:$B$11=B16)*--($A$2:$A$11<=A16))
最后,我们需要让函数返回一个数组,从中获取单个值,方法是使用CTRL+SHIFT+ENTER作为数组公式输入函数。如果在公式周围加上大括号,则知道在Excel中输入的公式是正确的:

{=MAX($A$2:$A$11*--($B$2:$B$11=B16)*--($A$2:$A$11<=A16))}