別の列からの基準に基づいて、1列のすべての値を合計するスプレッドシート機能
-
22-08-2019 - |
質問
Iは、列AはX
に等しい場合、それはY
に等しいときの列B内のすべての値の和を生成するスプレッドシート関数を求めています。
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
解決
このような何か。
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)"
他のヒント
使用SUMIF(range, criteria, sum_range)
:(B2-B8間の加算値、指定された条件を使用して、critereaとしてA2-A8の値を使用して)
=SUMIF(A2:A8,"=X",B2:B8)
=SUMIF(A2:A8,"=Y",B2:B8)
あなたは合計を計算するためにSUMPRODUCT
を使用することができます。 "X" の値を示します。
=SUMPRODUCT((A1:A6="X")*(B1:B6))
"Y" の値についてます:
=SUMPRODUCT((A1:A6="Y")*(B1:B6))
希望のに役立ちます、
エリックMelski
編集のどうやらGoogleのスプレッドシートでSUMPRODUCTを使用するARRAYFORMULAを使用する必要があります。たとえば http://www.googleを参照してください.COM /サポート/フォーラム/ P /グーグル+ドキュメント/スレッド?TID = 13a3eb824446e891&HL = EN の
一つの迅速かつ汚いソリューションは、2つの新しい列を作ることです。 ?各行xについて、Cxは=斧== 'X' Bxのようなものにする必要があります:0。列Dのために同じことをしますが、斧==「Y」をチェックします。次いで、C及びDを合計します。
(つまり、Googleスプレッドシートの構文を正確に一致するかどうかわからない。)
タグについては何
=query(A:B, "select A, sum(B) group by A order by sum(B) desc")
Googleドキュメントはsumproduct
と--
演算子をサポートしていないという事実は、Excelがないよう、少し悩ませています。あなたはいつもより多くの列を使用して機能を複製することができますが、あなたのコメントの一つに対応して、これは不可能だ。
非表示の列がフォームにレンダリングされるかどうかをチェックできます。そうでない場合、これは移動するための方法である。