有一个日期列表,例如:
01-giu-16
01-giu-16
01-giu-16
31-mag-16
31-mag-16
31-mag-16
31-mag-16
30-mag-16
我正在寻找一个 excel 公式来帮助我计算列表中唯一天数(在本例中为 3)
此外,我只需要对下一列中具有特定ID的日期进行计数(例如1565)
无需任何其他条件,即可使用
=SUMPRODUCT(1/COUNTIF(A1:A8,A1:A8))
,假设您的数据在 A1:A8
范围内。
要根据其他标准(假设它们在 B 列中)进行评估,请使用
{=SUM(--(FREQUENCY(IF(B1:B8=1565,MATCH(A1:A8,A1:A8,0)),ROW(A1:A8)-ROW(A1)+1)>0))}
这是一个数组公式:完成编辑后使用 Ctrl + Shift + Return (不要自己键入大括号)。就我个人而言,尽管我认为这超出了复杂性的合理阈值:我倾向于在表示输入数据的中间转换的列上采用第一种方法。
假设您的数据位于 A 列中,并且它有一个标题行。 因此,第一个数据编号实际上将在 A2 中。 将此公式放在 B2 中并向下复制列表旁边。 它将从 A 列生成唯一单元格编号的列表。 获得列表后,您只需要使用一个函数来计算它的侧面。
=iferror(INDEX($A$2:$A$5,MATCH(0,INDEX(COUNTIF($B$1:B1,$A$2:$A$5),0,0),0)),"")
在C2中,您可以使用以下公式来获取唯一单元格编号的数量
=COUNTA(B2:B9)-COUNTIF(B2:B9,"")
在 D2 中,您可以使用以下公式从原始列表中获取每个唯一单元格编号的计数。 根据需要将其复制下来。
=IF(B5="","",COUNTIF($A$2:$A$9,B5))