Excel – 将一系列文本转换为公式中的date
我公式中提到的两列是“Carrier”,另一列是“OriginalEffectiveDate”。 第二栏包含两年的date范围。 我需要显示两年的运营商数量。
因此,如果date范围是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)
当我最初设置文件时,我使用的数据是静态的,date是数字字段。 当我把同一个文件直接连接到数据库时,date现在是文本,我不能得到相同的公式来工作。
在此先感谢您的帮助。
=COUNTIFS(tbl_Group[Carrier],A5,tbl_Group[OriginalEffectiveDate],"<="&EDATE(MAX(tbl_Group[OriginalEffectiveDate]),-12))
照片:
你可以添加一个计算列到你的表?
如果是这样,试试这个:添加一个名为CalculatedDate
的公式=DATEVALUE([@OriginalEffectiveDate])
您的CountIfS
公式成为
=COUNTIFS(tbl_Group[Carrier],A10,tbl_Group[CalculatedDate],"<="&EDATE(MAX(tbl_Group[CalculatedDate]),-12))
请注意: DATEVALUE
会根据我的区域设置对yyyy-mm-dd
进行潜在模糊date的假设。
如果没有计算列, COUNTIFS
无法工作的原因是criteria_range
参数必须是直接范围,而tbl_Group[OriginalEffectiveDate]
是string,而不是date。
另一个不需要计算列的公式是
=SUMPRODUCT( (tbl_Group[Carrier]=A12) * (DATEVALUE(tbl_Group[OriginalEffectiveDate]) <= MAX(EDATE(DATEVALUE(tbl_Group[OriginalEffectiveDate]),-12)) ) )