寻找变量变化的价值

时间:2019-01-15 03:54:11

标签: excel-formula

我正在创建一个excel工作表以汇总另一个工作表中的值。问题是我有许多不同的客户ID,并且每六个月我们会在他们的电话上收到他们活动的摘要。一栏显示他们是否已更新到新的操作系统。如果没有,则显示0,如果在6个月内或6个月之前完成,则显示1。

我已经尝试过使用IFERRORINDEX公式,但是这些公式对我没有用。

我真的根本无法使它正常工作,因此我没有任何代码可向您显示。但这是数据的通用格式。

在A列中,您拥有所有客户ID,并且每6个月有多个条目。然后在B列中输入6个月的日期,在C列中分别输入0或1(根据它们是否尚未更新)。

+-------------+--------+----------+
| Customer ID |  Date  | Updated? |
+-------------+--------+----------+
|         001 | Dec-17 |        0 |
|         001 | Jun-17 |        0 |
|         001 | Dec-16 |        0 |
|         001 | Jun-16 |        0 |
|         002 | Dec-17 |        1 |
|         002 | Jun-17 |        1 |
|         002 | Dec-16 |        0 |
|         003 | Dec-17 |        1 |
|         003 | Jun-17 |        1 |
|         003 | Dec-16 |        1 |
|         003 | Jun-16 |        0 |
|         003 | Dec-15 |        0 |
+-------------+--------+----------+

输出应在一个单独的标签中,该标签仅包含唯一的客户ID,如下所示:

+-------------+--------------+
| Customer ID | Date Updated |
+-------------+--------------+
|         001 | 0            |
|         002 | Jun-17       |
|         003 | Dec-16       |
+-------------+--------------+

我认为这将需要数组公式,但是真的不知道它们如何工作。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

假定日期是真实日期,而不是文本:

如果您拥有Office 365,则可以使用Minifs

=MINIFS(Table1[month],Table1[id],F5,Table1[value],1)

如果没有该功能,则可以使用以下数组公式:

=MIN(IF((Table1[id]=F5)*(Table1[value]=1),Table1[month]))

请记住使用Ctrl + Shift + Enter进行确认。

使用自定义格式mmm-yy;;0格式化结果,该格式显示0表示0值,而不显示日期。

如果要将公式放在另一张纸上,请相应地调整公式。

enter image description here

注释后编辑:我发布的公式使用结构化引用Excel表。如果您的数据不在表对象中,或者您不想使用结构化引用,则可以使用常规引用。

=MINIFS($C$5:$C$16,$B$5:$B$16,F5,$D$5:$D$16,1)

=MIN(IF(($B$5:$B$16=F5)*($D$5:$D$16=1),$C$5:$C$16))