考虑以下数据集:
A:User | B:Date | C:Score | D:DiffLastResult
1: John 2021-01-01 7
2: Jane 2021-01-01 7
3: James 2021-01-01 8
4: John 2022-01-01 4
5: Jane 2022-01-01 9
6: James 2022-01-01 10
7: John 2022-06-01 10
8: Jane 2022-06-01 5
9: James 2022-06-01 7现在,我希望在D列中有当前分数和前一个分数之间的abs差值(对于给定的用户)。例如,用户James的最后一个分数是7分,之前的得分是10,所以增量是- 3,应该在单元格D9中显示。在单元格D6中,我希望有一个2的值(在2022-01-01的范围内,詹姆斯以前的分数是10-8)。
为了提出这个问题,这个清单被简化了。在我的真实文件中,名字列表是无序的,不重复的(并不是所有的用户都有相同的分数)。
我在使用谷歌单张。我尝试过使用vlookup、查找和索引/匹配组合,但是我一直得到James的第一个分数(而不是前一个)。列表按日期ASC排序。
谁能给我指明正确的方向吗?非常感谢。
发布于 2022-09-12 12:57:11
尝试:
=ARRAYFORMULA(IFNA(VLOOKUP(
A1:A&COUNTIFS(A1:A, A1:A, ROW(A1:A), "<="&ROW(A1:A))-1, {
A1:A&COUNTIFS(A1:A, A1:A, ROW(A1:A), "<="&ROW(A1:A)), C1:C}, 2, )))

https://stackoverflow.com/questions/73689127
复制相似问题