求助:电子表格中如何实现按周自动汇总薪资至周末行
每周薪资总额自动计算方案
针对你需要在H列(WeekTotal)每周最后一行显示对应周薪资(G列)总额的需求,提供以下适配不同Excel版本的公式:
适配Excel 365/2021(支持动态数组)
在H2单元格输入以下公式,下拉填充即可:
=IF(WEEKNUM(A2,2)=WEEKNUM(A3,2),"",SUMIFS(G:G,WEEKNUM(A:A,2),WEEKNUM(A2,2)))
公式说明:
WEEKNUM(A2,2):以周一为一周起始日计算A2日期所属周数;若需以周日为起始,将参数改为1- 条件判断部分:如果当前行日期的周数与下一行相同,说明不是周最后一行,返回空值;否则执行求和
SUMIFS(...):筛选出所有与当前行同周数的G列薪资,计算总和
适配旧版Excel(需数组公式)
在H2单元格输入以下公式后,按Ctrl+Shift+Enter(数组公式专属输入方式),再下拉填充:
=IF(WEEKNUM(A2,2)=WEEKNUM(A3,2),"",SUM(IF(WEEKNUM(A:A,2)=WEEKNUM(A2,2),G:G,0)))
公式说明:
- 通过数组公式遍历A列所有日期,匹配当前行周数后提取对应G列薪资,再求和
- 同样可调整
WEEKNUM的第二个参数切换周起始日
跨年场景优化建议
若表格存在跨年数据,建议用ISOWEEKNUM替代WEEKNUM,避免周数计算混乱(国际标准周:周一为起始,每年第一周至少包含4天),修改后的公式示例:
=IF(ISOWEEKNUM(A2)=ISOWEEKNUM(A3),"",SUMIFS(G:G,ISOWEEKNUM(A:A),ISOWEEKNUM(A2)))
内容的提问来源于stack exchange,提问作者ready4data
相关产品推荐
相关产品推荐

