我想编写一个查询,返回两个相乘单元格的总和,其中名称等于人名。假设我说我有:
| 姓名 | 得分 | 天|
|---------|------|------|
| 苏茜 | 5.0 | 3
| 乔尼 | 5.0 | 1
| 苏茜 | 4.0 | 1
| 苏茜 | 5.0 | 7
| 乔尼 | 4.0 | 1
基本上,我想知道 Suzie 的平均分数。但有些行代表多天。算术将是
(5.0 * 3) + (4.0 * 1) + (5.0 * 7)
我想写一个查询:
=(index(query({a1:c3}, "Select Sum(Col2 * Col3) where Col1 = '" & D22 & "'"),2))
Run Code Online (Sandbox Code Playgroud)
但是,它不喜欢说“Sum(Col2 * Col3)”的部分
是否可以将两列相乘?
先感谢您!
你不需要询问。
两个单元格相乘的总和,其中名称等于人名
使用 SUMPRODUCT(array1, [array2, ...]):
=SUMPRODUCT(B1:B5,C1:C5,A1:A5=D22)
Run Code Online (Sandbox Code Playgroud)
请注意,这A1:A5=D22
是一个标准。
平均分
使用 SUMIF(范围, 标准, [sum_range]):
=SUMPRODUCT(B1:B5,C1:C5,A1:A5=D22)/SUMIF(A1:A5,D22,C1:C5)
Run Code Online (Sandbox Code Playgroud)
请参阅此示例文件。
数据
Col1 Col2 Col3
a 10 20
a 30 40
b 10 30
Run Code Online (Sandbox Code Playgroud)
结果
a 1400
b 300
Run Code Online (Sandbox Code Playgroud)
公式
=QUERY({A2:A,ARRAYFORMULA(B2:B*C2:C)},
"select Col1, sum(Col2) where Col1 <> '' group by Col1")
归档时间: |
|
查看次数: |
2554 次 |
最近记录: |