7

列Aがに等しい場合と列Aがに等しい場合に、列Bのすべての値の合計を生成するスプレッドシート関数が必要XですY

A     B

X    10
Y     3
X     7
X    22
Y     4
Y     9

出力は次のようになります(ここで39、および16は数式の結果です)。

X    39           -> 10 + 7 + 22
Y    16           -> 3 + 4 + 9
4

6 に答える 6

13

このようなもの

X   10
Y   3
X   7
X   22
Y   4
Y   9

X   "=SUMIF(A1:A6;A8;B1:B6)"
Y   "=SUMIF(A1:A6;A9;B1:B6)"
于 2009-03-31T22:38:02.493 に答える
6

use SUMIF(range, criteria, sum_range): (指定された条件を使用して、A2-A8 の値を基準として使用して、B2-B8 間の値を合計します)

=SUMIF(A2:A8,"=X",B2:B8)
=SUMIF(A2:A8,"=Y",B2:B8)
于 2009-03-31T22:53:35.827 に答える
1

迅速で汚い解決策の1つは、2つの新しいカラムを作成することです。各行xについて、Cxは= Ax =='X'?Bx:0のようになります。列Dについても同じことを行いますが、Ax=='Y'を確認します。次に、CとDを合計します。

(それがGoogleスプレッドシートの構文と正確に一致するかどうかはわかりません。)

于 2009-03-31T22:34:50.207 に答える
1

どうですか

=query(A:B, "select A, sum(B) group by A order by sum(B) desc")
于 2012-09-24T14:51:14.290 に答える
0

sumproductExcel のように、Google Docs がand演算子をサポートしていないという事実--は、少し面倒です。より多くの列を使用して機能をいつでも複製できますが、コメントの1つで回答したように、これは不可能に思えます.

非表示の列がフォームにレンダリングされているかどうかを確認できます。そうでない場合は、これが進むべき道です。

于 2009-03-31T22:49:12.187 に答える