答案1
我相信这个公式会起作用(在 Excel 2016 中测试过):=SUM(IF(FREQUENCY(IF(B2:Z2="A",COLUMN(B2:Z2)),IF(B2:Z2<>"A",COLUMN(B2:Z2))),1))
根据需要修改列引用。
您也可以使用:=SUM(IF(FREQUENCY(IF(B2:Z2=$A$5,COLUMN(B2:Z2)),IF(B2:Z2<>$A$5,COLUMN(B2:Z2))),1))
因为您使用 A5 来表示“A”的含义。
这是一个数组公式,因此您必须在输入公式后按 CTRL+SHIFT+ENTER。在第一行输入公式,然后复制/填充。
这是我找到的公式的修改这里
编辑:假设您有一行表示全年,并且一年的第一天在 D 列(如您的示例所示),则公式将是:=SUM(IF(FREQUENCY(IF(D8:ND8=$A$5,COLUMN(D8:ND8)),IF(D8:ND8<>$A$5,COLUMN(D8:ND8))),1))
或者:=SUM(IF(FREQUENCY(IF(D8:ND8="A",COLUMN(D8:ND8)),IF(D8:ND8<>"A",COLUMN(D8:ND8))),1))
如果您更愿意在公式本身中使用表示缺失的字符。此公式将位于同一行。同样,这是一个数组公式,因此您必须按 SHIFT+CTRL+ENTER 才能使其起作用,然后向下填充所需的行数。