Di Excel bagaimana saya bisa menjumlahkan semua angka di atas sel saat ini?

31

Saya ingin memiliki kolom di Excel yang terdiri dari tajuk, sekelompok angka, dan kemudian memiliki jumlah angka-angka di bagian bawah. Saya ingin jumlah untuk beradaptasi dengan penyisipan angka baru di atas total. Sesuatu seperti ini:

Numbers
 1
 2
 5
10

18        Total

Jika nanti saya memasukkan 10 angka baru di tengah daftar, saya ingin jumlahnya memasukkan secara otomatis.

Saya tahu SUM()fungsinya dapat menjumlahkan seluruh kolom, tetapi jika totalnya juga ada di kolom itu maka ia mengeluhkan referensi melingkar. Bagaimana saya bisa menjumlahkan angka di atas total?

Mark Meuer
sumber

Jawaban:

51

Fungsi ROW()dan COLUMN()akan memberikan baris dan kolom sel saat ini. Gunakan mereka dalam ADDRESS()fungsi untuk membuat string yang mewakili rentang dari bagian atas kolom saat ini ke baris di atas total. Kemudian gunakan INDIRECT()fungsi untuk mengubah string itu menjadi rentang nyata untuk diberikan kepada SUM()fungsi. Rumus untuk total sel akan menjadi:

=SUM(INDIRECT(ADDRESS(1,COLUMN())&":"&ADDRESS(ROW()-1,COLUMN())))

Masukkan ke dalam sel apa saja dalam spreadsheet dan itu akan menghasilkan jumlah semua angka dalam kolom di atas sel itu.

Mark Meuer
sumber
1
@ user370646 Sebenarnya, saya baru saja mengujinya dengan Excel 2010 menggunakan beberapa jenis formula dalam sel yang berbeda yang ditambahkan dan bekerja dengan benar. (Itu gagal dengan kesalahan referensi melingkar jika sel yang ditambahkan berisi rumus yang mereferensikan sel dengan jumlah.) Apakah Anda memiliki contoh spesifik?
Mark Meuer
1
+1 kali jutaan. Ini berfungsi di Google Sheets di mana rentang fungsi penjumlahan -DON'T- secara otomatis diperbarui. Terima kasih banyak.
seekerOfKnowledge
1
Saya baru saja menguji di Google Sheets dan kombinasi fungsi bekerja dengan sempurna.
Sun
1
Jawaban ini menyelamatkan hidupku!
kRazzy R
1
Tampaknya bekerja di LibreOffice Calc juga.
Dejan
6

Sebenarnya, Anda bisa melakukan apa yang Anda inginkan dengan polos =SUM()

Dengan asumsi lembar Excel Anda memiliki desain berikut:

\|  A  |  B  |
-+-----+-----+
1|  1  |     |
2|  2  |     |
3|  3  |     |
4|  4  |     |
5|  5  |     |
6|     |     |
7|  15 |Total|

Assumng A7adalah =SUM(A1:A5), Anda dapat menambahkan lebih banyak baris sesuka Anda, karena Excel akan memperluas =SUMrentang sesuai.

Asumsikan sekarang saya memilih baris 2, 3 dan 4, dan saya memasukkan baris. Hasilnya adalah sebagai berikut:

 \|  A  |  B  |
--+-----+-----+
 1|  1  |     |
 2|     |     |
 3|     |     |
 4|     |     |
 5|  2  |     |
 6|  3  |     |
 7|  4  |     |
 8|  5  |     |
 9|     |     |
10|  15 |Total|

A10sama dengan =SUM(A1:A8). Dengan demikian, Anda sekarang dapat memasukkan nomor baru sesuka hati.

Doktoro Reichard
sumber
1
Sekarang setelah Anda menjabarkannya, saya tahu perilaku ini. Tetapi untuk beberapa alasan saya berpikir akan berguna untuk hanya memiliki formula yang akan selalu dijumlahkan dari atas sel saat ini. Tetapi jelas lebih mudah untuk membuat rentang jumlah sederhana daripada rumus kompleks yang saya buat. Aku terlalu pintar setengahnya. Terima kasih! (Saya harus menghibur diri sendiri bahwa saya setidaknya belajar tentang INDIRECT dan ALAMAT, yang belum pernah saya gunakan sebelumnya.)
Mark Meuer
2
Saya telah mengubah jawaban yang diterima menjadi yang saya poskan sebagai jawaban terus bertambah satu tahun kemudian, melakukan pekerjaan yang saya tanyakan dalam pertanyaan, dan tampaknya bekerja di spreadsheet Google di mana jawaban ini tidak. Tapi, @Doktoro, jawaban Anda memberikan wawasan yang sangat berguna dan saya berterima kasih untuk itu.
Mark Meuer
1
Ada cacat: Masukkan baris di akhir (sebelum baris kosong). Paling tidak di LibreOffice, ini akan meninggalkan formula SUM dengan rentang aslinya, yaitu menghilangkan baris baru. Solusi saya: SUM(OFFSET(A$1; 0; 0; ROW(A7)-ROW(A$1); 1)). Karena mengacu pada dirinya sendiri dan bukan baris di atas, itu akan selalu menyesuaikan rentang dengan benar.
Tilman Vogel
@TilmanVogel harusnya menjadi jawaban! Terima kasih banyak
Genarito
5

Jawaban ini khusus untuk Libra Office tetapi harus juga berfungsi untuk Excel.

Pada dasarnya, jika kita ingin secara eksplisit menyebutkan baris / kolom untuk dibekukan, kita harus menyebutkan $ dengan baris / kolom itu.

* Ada algo inbuilt juga sehingga ketika Anda menyalin rumus ke sel lain, Libra Office akan secara otomatis menentukan bagaimana seharusnya mengubah nilai rumus.

Jadi, anggaplah Anda harus menambahkan semua baris G1: GN => di mana N adalah nomor baris saat ini. Untuk ini, Anda ingin memperbaiki baris nilai pertama dan menjaga nilai lainnya sebagai. Jadi rumusnya adalah:

= SUM (G $ 1: G1) -> untuk baris pertama dan kemudian Anda dapat menyalin-tempel rumus ke sel lain.

Libra Office akan secara otomatis menjadikan G1 sebagai nilai pertama dan secara dinamis mengubah nilai 2 menjadi G2, G3 dan seterusnya untuk setiap sel.

Prateek
sumber
Sesuai jawaban Apostolos55> = Jumlah ($ A1: A1) <, itu tidak akan berfungsi karena hanya kolom A yang akan diperbaiki sementara Row masih akan bervariasi ketika formula disalin ke sel lain di kolom yang sama. Jadi, $ harus ditambahkan sebelum baris untuk mendapatkan nilai yang benar dalam rumus. Lebih lanjut, itu tidak menjelaskan apa yang bisa menjadi kombinasi lain, jadi saya memberikan alternatifnya. $ Harus diterapkan pada Baris dan Kolom jika sel harus dijaga konstan.
Prateek
3

ok, Indirect () volatile ... sehingga sheet Anda bertambah besar, itu hanya akan semakin lambat. Jika cocok dengan Anda, Anda sebaiknya menggunakan:

=Sum($A1:A1)

ketika Anda menyeret rumus ini ke bawah, Anda akan selalu memiliki rentang dari A1 hingga sel saat ini (atau sebelumnya dll). Tidak mudah menguap, sangat cepat, jauh lebih sederhana!

Apostolos55
sumber
Terima kasih atas jawabannya. Tolong bantu saya mengerti, apa perbedaan jawaban Anda dengan @Doktoro Reichard?
Mark Meuer
Ini adalah jumlah yang dapat "mengikuti" di samping sel Anda, katakan di kolom berikutnya. Kemudian dengan JIKA Anda hanya dapat menampilkan / menghitung Jumlah terakhir. Mungkin bukan yang Anda cari, tetapi baik untuk diketahui.
Apostolos55
Terima kasih untuk informasi. Anda benar bahwa itu tidak menyelesaikan masalah dari pertanyaan awal (yang secara khusus mencari rumus untuk menjumlahkan angka di atas sel) tetapi mungkin membantu dalam situasi lain.
Mark Meuer