【发布时间】:2017-04-06 13:29:21
【问题描述】:
我有一个挑战,似乎应该有一个简单的答案,但我无法解决。我有一个费率列表,如果条件与其他三个单元格匹配(一个单元格等于,下一个单元格大于,下一个单元格小于),我需要在一个大列表中找到最小值,我的公式是:
=IF(C7="f",IF(MIN(IF($C$4:$C$43="m",IF($D$4:$D$43>E7,IF($D$4:$D$43<F7,$G$4:$G$43,""),""),""))>0,MIN(IF($C$4:$C$43="m",IF($D$4:$D$43>E7,IF($D$4:$D$43<F7,$G$4:$G$43,""),""),"")),"no match"),"")
它有额外的,所以如果它不满足“f”条件,它不会做任何事情,如果数组中不满足条件,它会返回“不匹配”。
这部分有效,但现在我想显示与找到的汇率(汇率名称)相关的相同汇率的单元格名称,在上面公式中找到的汇率旁边,因此类似的公式,但使用 INDEX 和 MATCH 或 OFFSET。挑战是我的数据具有相同的速率,因此数组可以返回多个正确答案,这也是可以的,但是当我尝试将其与速率名称匹配时,它只是在数组中找到与速率匹配的第一个速率没有标准,我无法弄清楚如何再次合并标准。
换句话说 - 条件找到正确的匹配,但匹配然后查找值并选择数组中的第一个匹配 - 并不总是正确的。以下是数据样本。 sorry about the image- no easy way to show data in SO
【问题讨论】:
-
所以你只想找到 M 个值?如果是这样,请将其作为参数添加到 IF 函数中。
-
我相信你的
<和>上面的公式是颠倒的,你需要在它们后面加上=。根据您的示例,需要进行这些更改才能获得第一列的回报。 -
等号是正确的,我的 是正确的,但是我提供的示例数据的低和高与我的实际数据相反 - 哎呀 - 因此下面的公式很棒 - 但我有反转 使其工作。谢谢!
标签: excel