Nilai penjumlahan dengan nama yang sama

45

Saya memiliki Google Sheets dengan daftar panjang nama dan jumlah. Banyak nama yang merupakan duplikat. Sebagai contoh:

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

Apakah ada cara otomatis untuk menggabungkan semua nilai jadi saya mendapatkan daftar tanpa nama duplikat dan jumlah tunggal dari setiap entri setiap orang?

Sebagai contoh:

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

Jawaban:

51

Dengan asumsi nama dalam A1: A8, jumlah dalam B1: B8, pertama kita perlu daftar nama unik di D1:

=UNIQUE(A1:A8)

Kemudian gunakan jumlah bersyarat dalam E1:

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

Harap perhatikan $awalan sebelum nomor sel. Ini akan menjaga rentang yang sama ketika kita menyalin konten sel (pilih sel E1: E8 dan tekan Ctrl+ D).

Zmogas
sumber
2
Bagus! Hanya ingin menambahkan bahwa di beberapa lokal Anda perlu mengganti koma dengan titik koma, yaitu = SUMIF (A $ 1: A $ 8; D1; B $ 1: B $ 8).
JLund
Terima kasih atas jawabannya. Terpilih. Bagaimana Anda mengurutkannya dalam urutan menurun berdasarkan jumlah? Dalam contoh ini, John akan didahulukan, kemudian Sally, Susan dan akhirnya Bill.
Vaddadi Kartick
Cukup :) = SORT (A2: B92; FALSE)
Zmogas
2
tidak bekerja untuk saya
Gilbou
23

Jika Anda menggunakan Fungsi Kueri maka Anda tidak perlu khawatir tentang pertumbuhan daftar dan tidak cukup menyalin rumus jumlah ke bawah.

Jika nama berada di A: A dan jumlahnya di B: B, maka di D1 masukkan:

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

Ada jawaban yang jauh lebih menyeluruh di sini , bahkan dengan tangkapan layar.

SlimPickens
sumber
1
Bagaimana jika Anda memiliki baris tajuk? Apakah Anda harus mengetahui indeks awal dan akhir baris tertentu? Aha, sepertinya saya bisa menentukan # baris tajuk ... support.google.com/docs/answer/3093343?hl=id
qix
Ini adalah metode terbersih, saya pikir. Perhatikan bahwa jika Anda tidak ingin meminta seluruh spreadsheet (misalnya, jika Anda memiliki data yang tidak terkait di bawah), Anda dapat menentukan rentang seperti A2: B28) Selain itu, saya ingin menggunakan fungsi CONCATENATE untuk menggabungkan beberapa kolom dari saya spreadsheet menjadi satu baris untuk dikelompokkan - seperti Nama Belakang, Nama Depan.
Evan Donovan
7

Saya akan mencoba ini: Saya lebih suka menggunakan fungsi filter. Menggunakan pemilihan kolom, memungkinkan tabel tumbuh secara otomatis saat menambahkan data "baru":

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

Jika Anda memiliki tajuk, Anda dapat mengubahnya sesuai:

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

Membuat penjumlahan subseqent mudah:

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

Lihat contoh: File yang saya siapkan dengan contoh

Jacob Jan Tuinstra
sumber
6

Gunakan Laporan Tabel Pivot ... di bawah DataMenu.

Anda harus memastikan bahwa baris pertama memiliki nama bidang.

mhoran_psprep
sumber
Ini sebenarnya lebih mudah daripada jawaban rumus.
Dannid
Yap, ini jawaban yang benar. Lupakan rumus untuk tugas pengelompokan seperti itu.
giorgio79
1

Gunakan formula berikut!

Tajuk: =UNIQUE(A:A)

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

Kowser
sumber