我有 4 列:姓名、星期、批次和生产单位(列 A、B、C、D)。在 E 列中,我需要根据姓名和星期不断计算总数。当同一个人的星期发生变化时,重新开始计算总数。
Fred, 12, 4001, 129.0 Answer in e: 129.0
Fred, 12, 4012, 234.0 Answer in e: 363.0
Fred, 13, 4023, 12.0 Answer in e: 12.0
John, 12, 4003, 420.0 Answer in e: 420.0
John, 13, 4021, 1200.0 Answer in e: 1200.0
John, 13, 4029, 120.0 Answer in e: 1320.0
我需要能够将公式复制到 1000 多行。
答案1
对于 Excel 2007 或更高版本
E1:=SUMIFS(D$1:D1,A$1:A1,A1,B$1:B1,B1)
抄下来。
。
如果您需要各部分之间的间隙:
E1:=IF(OR(ISBLANK(A1),ISBLANK(B1)),"",SUMIFS(D$1:D1,A$1:A1,A1,B$1:B1,B1))
并抄下来。
您可以根据需要更改OR
为。AND
。
。
对于早期版本:
F1:=A1&B1
E1:=SUMIF(F1:F$1,A1&B1,D1:D$1)
把两者抄下来。
对于差距,请遵循上述逻辑。
答案2
如果您使用的是 Excel 2007 或更高版本,您可以利用两个内置功能来实现这一点。
- 将您的数据转换为 Excel 表。
- 使用该表创建数据透视表。
- 使用名称和周列作为数据透视表中的行标签。
- 在值区域中使用两次“生产单位”。保留一个为默认值,将另一个设置为累计值。
每当您的表格随着更新的数据而发生变化时,只需刷新您的数据透视表,您就可以获得最新的累计总数。