例如,我有以下 Excel 文件:
| USER ID | SCORE | TOTAL SCORE | TOTAL BONUS | NOTE |
| ------- | ----- | ----------- | ----------- | ----- |
| 18 | 10 | | | |
| 18 | 25 | | | |
| 18 | 15 | | | |
| 18 | 5 | | | bonus |
| 18 | 30 | | | |
| 24 | 2 | | | |
| 24 | 7 | | | |
| 24 | 21 | | | |
| 32 | 6 | | | |
| 32 | 9 | | | bonus |
| 32 | 18 | | | |
| 32 | 40 | | | |
对于每个用户 ID,在第一行中,我必须有总分,不包括奖金(可通过 NOTE 列识别),以及奖金总和(如果存在,否则为 0)。
该示例的结果应该是这样的:
| USER ID | SCORE | TOTAL SCORE | TOTAL BONUS | NOTE |
| ------- | ----- | ----------- | ----------- | ----- |
| 18 | 10 | 80 | 5 | |
| 18 | 25 | | | |
| 18 | 15 | | | |
| 18 | 5 | | | bonus |
| 18 | 30 | | | |
| 24 | 2 | 30 | 0 | |
| 24 | 7 | | | |
| 24 | 21 | | | |
| 32 | 6 | 64 | 9 | |
| 32 | 9 | | | bonus |
| 32 | 18 | | | |
| 32 | 40 | | | |
使用函数自动求和是否可行?也许可以用SUMIF()
?
答案1
答案2
在以下帮助下本文:
您需要创建一些额外的列。我首先计算学生 ID 的总分(包括奖金),然后计算总奖金,最后从总分中减去总奖金,得到所需的结果。
- 我们用这个函数来计算总分和总奖金
SUMPRODUCT
:SUMPRODUCT((A2:A13=A2)*B2:B13)
第一个矩阵是用户ID,结果按照这个矩阵分组并加在一起。第二个矩阵是用户分数。 - 我们创建一行,使用 IF 函数来计算总奖金:
IF(F2="bonus",B2,0)
- 我们计算总奖金,与第一个函数非常相似:
SUMPRODUCT((A2:A13=A2)*D2:D13)
- 我们从总分中减去总奖金:
C2-E2
此后,剩下的就是手动清理桌子了。
还有一个选项可以格式化单元格,使得当单元格值等于 0 时,单元格为空(您可以将其应用于“奖励”列)。