gre*_*eth 1 worksheet-function microsoft-excel
我有一张如下所示的表格:
Col1 | Col2
-----+-----
A | 12
A | 4
B | 5
A | 16
A | 8
B | 91
C | 6
A | 55
-----+-----
C | ???
Run Code Online (Sandbox Code Playgroud)
我想要的是,如果我C在左下方的单元格中键入(一个文本值),在???标记的单元格中显示Col2高于最后一个值的总和C(即 12+4+5+16+8+91)。以同样的方式,如果我B在同一个单元格中输入,我希望得到 12+4+5+16+8 结果。
我试着用SUMIFS和VLOOKUP没有运气。你是怎样做的?
您可以尝试以下公式:
=SUM(B1:INDEX(B:B,MATCH(2,IF($A$10=A1:A8,1))-1))
Run Code Online (Sandbox Code Playgroud)
输入作为以与阵列式Ctrl+ Shift+ Enter。
IF($A$10=A1:A8,1)返回一个1and数组false。如果范围等于 C,那么我们得到数组{false,false,false,false,false,false,1,false},并MATCH(2, {false,false,false,false,false,false,1,false})返回7,6当从数组中取出 1 时,它变为。
然后 index 返回单元格 B6,它被拾取SUM以制作 range B1:B6。
如果C更改为A,我们得到:{1,1,false,1,1,false,false,1},MATCH返回8并SUM变为B1:B7。
| 归档时间: |
|
| 查看次数: |
11567 次 |
| 最近记录: |