根据多个条件

时间:2016-07-17 14:37:36

标签: excel excel-formula

我有一张表基本上就像一个由三列组成的数据库:description(string),rate(numeric)和fee(numeric)。

我正在尝试构建一个动态搜索功能,该功能可根据卡片首字母,费率和费用的输入从数据库中返回正确的结果。 (见图)

enter image description here

到目前为止,我设法让它返回与速率匹配的所有别名,并突出显示包含给定描述的单元格。

但是,我希望它包含一个只返回带有正确卡片首字母的条目的条件,如" MC"基于B3:C3中的细胞输入。目前,它返回VS,MC和DC,而不仅仅是MC。我还希望它返回与费用相匹配的结果。基本上,它应该从数据库中返回与卡片首字母,费率和费用相匹配的条目。目前,它只考虑了费率。

我该怎么做呢?

编辑:忘记提及我如何获得费率和费用。 我使用vlookup公式:

=IF(ISERROR(VLOOKUP(E3,fdata,2,FALSE)), "", VLOOKUP(E3,fdata,2,FALSE))

1 个答案:

答案 0 :(得分:0)

enter image description here

根据上述布局,假设C1到E10是您的数据库/工作表的布局,并且您的搜索条件位于A12:A19区域,那么您可以使用以下公式并将其复制以满足预期的数量条目:

=IFERROR(INDEX(C$2:C$10,AGGREGATE(15,6,ROW(C$2:C$10)/(($A$13=LEFT($C$2:$C$10,2))*(ISNUMBER(SEARCH($A$15,$C$2:$C$10)))*($A$17=$D$2:$D$10)*($A$19=$E$2:$E$10))-ROW($C$2)+1,ROW($A1))),"")

然后将该公式复制到右侧以从相邻的列费率和费用中提取信息。在这个例子中,我将公式放在C12中并复制到D12和E12。