我想使用 Excel 比较以下数据“前/后”列中的数字对:
Student Course Pre/Post Score
K300997203 FHS120100417 Pre 3
L286197217 FHS120100417 Pre 5
S106497203 FHS120100417 Pre 4
K300997203 FHS120100417 Post 4
L286197217 FHS120100417 Post 4
S106497203 FHS120100417 Post 4
S106497203 FHS220100424 Pre 4
具体来说,我想要一个单元格来包含“分数”列中的值的差异,其中“之前”和“之后”分别出现在“学生”和“课程”列中具有相同值的行中。
例如,学生 K300997203 的某一行包含课程 FHS120100417、成绩为 3 且“Pre”
和
学生 K300997203 有一行包含课程 FHS120100417、分数为 4 且具有“Post”。
如何计算单元格值作为包含“Post”的行中的分数减去包含“Pre”的行中的分数?
答案1
这是放置数据透视表的最佳位置。(说明假设使用 Excel 2007)
- 选择您的数据,然后插入数据透视表
- 将课程、学生和预/后添加到行标签按给定的顺序
- 为价值观添加分数
- 选择数据透视表中任何包含“前”或“后”的单元格
- 转到公式->计算项...
- 从字段列表中选择“前/后”
- 在名称字段中输入三角洲
- 在公式字段中输入=后-前
- 单击“确定”- 您现在将看到 Delta 值出现在数据透视表中
- 单击“行标签”旁边的向下箭头,然后从列表中取消选择“前后”。
- 根据您的喜好调整总计和小计(在这种情况下,我建议将其关闭。)
(感谢您提出这个问题 - 您给了我一个机会来了解数据透视表中的计算字段和计算项之间的区别:)
编辑:我应该补充一点,如果您首先将数据转换为列表,那么您可以轻松地将数据附加到其中,然后点击数据透视表上的刷新以计算和显示新数据。
答案2
您的数据从 A1 开始,学生编号在 A11 中,课程在 B11 中,使用此公式
=SUMPRODUCT(($A$2:$A$8=A11)*($B$2:$B$8=B11)*($C$2:$C$8="Post")*($D$2:$D$8))-SUMPRODUCT(($A$2:$A$8=A11)*($B$2:$B$8=B11)*($C$2:$C$8="Pre")*($D$2:$D$8))