同じ名前の合計値


45

Googleスプレッドシートには、名前と金額の長いリストがあります。名前の多くは重複しています。例えば:

John  | 10
Bill  | 2
Susan | 3
Frank | 4
Sally | 10
John  | 2
Susan | 2
John  | 3

すべての値を結合する自動化された方法はありますか?重複する名前と各人のすべてのエントリの単一の合計のないリストを取得しますか?

例えば:

John  | 15
Bill  | 2
Susan | 5
Sally | 10

回答:


51

名前がA1:A8にあり、金額がB1:B8にあると仮定すると、最初にD1に一意の名前リストが必要です。

=UNIQUE(A1:A8)

次に、E1で条件付き合計を使用します。

=SUMIF(A$1:A$8,D1,B$1:B$8)

$セル番号の前にプレフィックスを書き留めてください。これは、セルの内容をコピーするときに同じ範囲を維持します(セルE1:E8を選択してCtrl+ を押しますD)。


2
すばらしいです!一部のロケールでは、カンマをセミコロンに置き換える必要があることを追加したいだけです。つまり、= SUMIF(A $ 1:A $ 8; D1; B $ 1:B $ 8)。
JLund

答えてくれてありがとう。賛成。どのように量で降順に並べ替えますか?この例では、ジョンが最初に来て、サリー、スーザン、最後にビルが来ます。
バダディカルティック

シンプル:) = SORT(A2:B92; FALSE)
Zmogas

2
私のために働いていない
Gilbou

23

クエリ関数を使用する場合、リストが大きくなり、合計式が十分にコピーされないことを心配する必要はありません。

名前がA:Aにあり、金額がB:Bにある場合、D1に次を入力します。

=QUERY(A:B, "select A, sum(B) group by A")

ここには、スクリーンショットも含めて、はるかに詳細な答えがあります


1
ヘッダー行がある場合はどうなりますか?特定の開始および終了行インデックスを知っている必要がありますか?
ああ

これが最もクリーンな方法だと思います。スプレッドシート全体をクエリしたくない場合(たとえば、以下に関連のないデータがある場合)、A2:B28のような範囲を指定できることに注意してください)また、CONCATENATE関数を使用して、グループ化のためにスプレッドシートを1行に-姓、名など。
エヴァンドノヴァン

7

これについても説明します。フィルター機能を使用することを好みます。列選択を使用すると、「新しい」データを追加するときにテーブルが自動的に大きくなります。

FILTER(B:B;A:A=D2)

ヘッダーがある場合は、それに応じて変更できます。

FILTER($B$2:B;$A$2:A=D2)

後続の合計を作成するのは簡単です。

SUM(FILTER($B$2:B;$A$2:A=D2))

例を参照:例で準備したファイル



1

次の式を使用してください!

ヘッダ: =UNIQUE(A:A)

値: =SUMIF(A:A,UNIQUE(A:A),B:B)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.