excel 多列条件求和的可扩展公式
excel extendable formula for conditional sums over multiple columns
我有任意数量的列,一门课程按时间顺序提供的每个时期,以及任意数量的行,每一行代表每个唯一的参与者。该月的参与值为“1”,未参与值为“0”。
Fall2019 Spring2019 Fall2018 Spring2018 Fall2017
1 1 0 1 0
0 1 1 1 1
0 1 1 1 1
0 1 1 1 1
0 1 0 1 1
0 1 1 0 0
0 1 1 0 0
0 1 1 0 0
1 0 0 0 0
我想在每一列的底部求一个总和,表示有多少参与者是那个时期的第一次参加者,即“1”的总和,其中“1”右侧的行中的所有值',是'0'。
在给定的示例集中,Spring2018 总和应为 1,Fall2018 总和应为 3。
当只有前一列要比较时,类似下面的公式将适用于 'Spring2018':
=SUMPRODUCT((D2:D9)*(E2:E9=0))
但此公式不能 'autofilled' 或扩展到多列...即 none 这些变体有效:
=SUMPRODUCT((C2:C9)*(D2:$E9=0))
=SUMPRODUCT((C2:C9)*(SUM(D2:$E9)=0))
=SUMPRODUCT((C2:C9)*(SUMIF(D2:$E9,"0")))
虽然它会起作用,但我不想手动创建此公式的扩展版本,例如
=SUMPRODUCT((C2:C9)*(D2:D9+E2:E9=0))
=SUMPRODUCT((B2:B9)*(C2:C9+D2:D9+E2:E9=0))
... and so on
我尝试了 arrayformula、sumproduct 和 sumif 的几种变体,但我真的卡住了。感谢任何帮助。
使用这个数组公式:
=SUM(A2:A10*(MMULT(--(B:$E=1),TRANSPOSE(COLUMN(B:$E)^0))=0))
作为数组公式,退出编辑模式时必须使用 Ctrl-Shift-Enter 而不是 Enter 确认。
我有任意数量的列,一门课程按时间顺序提供的每个时期,以及任意数量的行,每一行代表每个唯一的参与者。该月的参与值为“1”,未参与值为“0”。
Fall2019 Spring2019 Fall2018 Spring2018 Fall2017 1 1 0 1 0 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 1 0 1 1 0 1 1 0 0 0 1 1 0 0 0 1 1 0 0 1 0 0 0 0
我想在每一列的底部求一个总和,表示有多少参与者是那个时期的第一次参加者,即“1”的总和,其中“1”右侧的行中的所有值',是'0'。 在给定的示例集中,Spring2018 总和应为 1,Fall2018 总和应为 3。
当只有前一列要比较时,类似下面的公式将适用于 'Spring2018':
=SUMPRODUCT((D2:D9)*(E2:E9=0))
但此公式不能 'autofilled' 或扩展到多列...即 none 这些变体有效:
=SUMPRODUCT((C2:C9)*(D2:$E9=0))
=SUMPRODUCT((C2:C9)*(SUM(D2:$E9)=0))
=SUMPRODUCT((C2:C9)*(SUMIF(D2:$E9,"0")))
虽然它会起作用,但我不想手动创建此公式的扩展版本,例如
=SUMPRODUCT((C2:C9)*(D2:D9+E2:E9=0))
=SUMPRODUCT((B2:B9)*(C2:C9+D2:D9+E2:E9=0))
... and so on
我尝试了 arrayformula、sumproduct 和 sumif 的几种变体,但我真的卡住了。感谢任何帮助。
使用这个数组公式:
=SUM(A2:A10*(MMULT(--(B:$E=1),TRANSPOSE(COLUMN(B:$E)^0))=0))
作为数组公式,退出编辑模式时必须使用 Ctrl-Shift-Enter 而不是 Enter 确认。