Sel kumulatif (kumulatif)

Contents [show]

Selalunya, situasi timbul apabila kita perlu meringkaskan (mengumpul) beberapa nilai yang dimasukkan secara berurutan ke dalam satu sel:

Itu. jika, sebagai contoh, anda memasukkan nombor 1 dalam sel A5, maka nombor 1 sepatutnya muncul dalam B15. Jika anda kemudian memasukkan nombor 1 dalam A7, maka 1 akan muncul dalam sel B22, dan seterusnya. Secara umum, akauntan (dan bukan sahaja mereka) panggil jumlah terkumpul.

Anda boleh melaksanakan penumpuk sel storan sedemikian menggunakan makro mudah. Klik kanan pada tab helaian di mana sel A1 dan B1 terletak dan pilih daripada menu konteks Teks sumber (Kod sumber). Dalam tetingkap editor Visual Basic yang terbuka, salin dan tampal kod makro ringkas:

Subsheet_Tukar Peribadi(Sasaran ByVal Sebagai Excel.Julat) Dengan Sasaran Jika .Alamat(Salah, Salah) = "A1" Kemudian Jika IsNumeric(.Value) Kemudian Application.EnableEvents = Julat Palsu("A2").Nilai = Julat(" A2").Value + .Value Application.EnableEvents = Tamat Benar Jika Tamat Jika Berakhir Dengan End Sub  

Alamat sel A1 dan A2, sudah tentu, boleh digantikan dengan sel anda sendiri.

Jika anda perlu menjejak kemasukan data dan meringkaskan bukan sel individu, tetapi keseluruhan julat, maka makro perlu diubah sedikit:

Sub Helaian Kerja Peribadi_Tukar(Sasaran ByVal Sebagai Excel.Julat) Jika Tidak Bersilang(Sasaran, Julat("A1:A10")) Tiada Jadi Jika IsNumeric(Sasaran.Nilai) Kemudian Application.EnableEvents = Sasaran Palsu.Offset(0, 1) .Value = Target.Offset(0, 1).Value + Target.Value Application.EnableEvents = True End Jika End If End Sub  

Diandaikan bahawa data dimasukkan dalam sel julat A1:A10, dan nombor yang dimasukkan disimpulkan dalam lajur bersebelahan di sebelah kanan. Jika dalam kes anda ia tidak bersebelahan, kemudian tingkatkan anjakan ke kanan dalam operator Offset – gantikan 1 dengan nombor yang lebih besar.

  • Apakah makro, di mana untuk memasukkan kod makro dalam VBA, bagaimana untuk menggunakannya?

Sila tinggalkan balasan anda