在Excel中根据条件和日期范围列出所有值

时间:2019-03-22 07:56:38

标签: excel

示例和结果,我希望它是

enter image description here

我有三个数据列

客户名称广告活动编号和日期

我想绘制所有与选定日期范围内的客户相关的广告系列编号,如图所示。

结果将从G7向下显示。

要达到我想要的结果,我需要在Cell G7中放入什么Excel公式?

1 个答案:

答案 0 :(得分:0)

这是您可以应用的一种选择:

enter image description here

我在H2中使用的公式将转换为:

=IFERROR(INDEX($B$2:$B$6,AGGREGATE(15,3,((($A$2:$A$6=$F$4)/($A$2:$A$6=$F$4))*(($C$2:$C$6>=$F$2)/($C$2:$C$6>=$F$2))*(($C$2:$C$6<=$F$3)/($C$2:$C$6<=$F$3))*ROW($A$1:$A$6)),ROWS($H$2:H2))),"")

另一个选择是从下到上工作:

{=IFERROR(INDEX($B$2:$B$6,LARGE(($A$2:$A$6=$F$4)*($C$2:$C$6>=$F$2)*($C$2:$C$6<=$F$3)*ROW($A$2:$A$6),ROWS($G$2:G2))-1),"")}

注意通过 Ctrl Shift Enter

将其作为数组公式输入

使用工作表引用时,它看起来像:

{=IFERROR(INDEX(Sheet1!$B$2:$B$6,LARGE((Sheet1!$A$2:$A$6=Sheet1!$F$4)*(Sheet1!$C$2:$C$6>=Sheet1!$F$2)*(Sheet1!$C$2:$C$6<=Sheet1!$F$3)*ROW(Sheet1!$A$2:$A$6),ROWS($G$2:G2))-1),"")}