我一直在用表格给自己一些任务的每日评分,每一行的布局如下
做伸展运动:| A | A | B | C | A 做了瑜伽 | F 忘记了 | A | B | A | B | A
我想添加一个单元格来计算我当前的连续天数,这些天数要么是 A,要么是 B,例如,连续五天。我已经这样做了几个月,所以我的数据范围从 S 列到 CK 列。因此,如果我查看第 7 行,公式应该查看单元格 S7:CK7,并从后面计算有多少连续天数以 A 或 B 开头。然后明天我应该能够插入一个新列,然后公式应该跟踪 S7:CL7。
如果有一个公式可以计算该行内的最长条纹就更好了。
关于我该如何布置它,有什么建议吗?
谢谢
答案1
如果您想在不编写脚本的情况下解决此问题,可以使用 XML 表轻松完成(突出显示您的数据 - 主页 - 格式化为表格)。但请注意,Excel 默认使用 XML 表,其中的公式是垂直而不是水平复制的,因此最简单的布局是转置您的数据,并在新行而不是新列中为每一天评分。
一旦您的数据进入 XML 表,您只需在表底部添加一天,Excel 就会自动在表中添加一行。
下面是一个示例,说明如何工作。在表格的一列中,创建一个计数器,它只是一个 IF 公式,如果当天得到 A 或 B,则将计数器加一;否则,计数器将重置为 0。在第 18 行中,该公式将是=IF(OR(B18="A",B18="B"),C17+1,0)
然后,您需要一个引用表格计数器列的 MAX 公式——在下面的示例中,表格名为 Table3,公式为=MAX(表 3[计数器])
(第 0 天条目只是为了将计数器初始化为 0)