此公式中提及的数据中的两列是" Carrier"另一列是" OriginalEffectiveDate"。第二列包含两年跨度的日期范围。这两年我需要展示一定数量的运营商。
因此,如果日期范围是2014年1月1日至2015年7月12日,那么我只想计算2014年截至2014年7月12日的运营商。换句话说,如果我计算2014年的全部数据而不是2015年的一部分,那么我的数字就会被取消。
结果如下:
2014 = 343 (Jan 1 - July 12, 2014)
2015 = 375 (Jan 1 - July 12, 2015)
当我最初设置文件时,我使用的数据是静态的,日期是数字字段。当我使用相同的文件并直接连接到数据库时,日期现在以文本形式出现,我无法使用相同的公式。
提前感谢您的帮助。
=COUNTIFS(tbl_Group[Carrier],A5,tbl_Group[OriginalEffectiveDate],"<="&EDATE(MAX(tbl_Group[OriginalEffectiveDate]),-12))
照片:
答案 0 :(得分:1)
您可以在表格中添加计算列吗?
如果有,请尝试以下操作:添加名为CalculatedDate
的列,其中包含公式=DATEVALUE([@OriginalEffectiveDate])
您的CountIfS
公式变为
=COUNTIFS(tbl_Group[Carrier],A10,tbl_Group[CalculatedDate],"<="&EDATE(MAX(tbl_Group[CalculatedDate]),-12))
注意:根据我的区域设置,DATEVALUE
会根据我的案例yyyy-mm-dd
对可能不明确的日期做出假设。
COUNTIFS
无法在没有计算列的情况下工作的原因是criteria_range
参数必须是直接范围,而tbl_Group[OriginalEffectiveDate]
是字符串,而不是日期。
不需要计算列的替代公式是
=SUMPRODUCT(
(tbl_Group[Carrier]=A12) *
(DATEVALUE(tbl_Group[OriginalEffectiveDate]) <=
MAX(EDATE(DATEVALUE(tbl_Group[OriginalEffectiveDate]),-12))
)
)