Sél kumulatif (kumulatif)

Daptar eusi

Rada sering, kaayaan timbul nalika urang kudu nyimpulkeun (akumulasi) sababaraha nilai sequentially diasupkeun kana hiji sél:

Jelema. lamun, contona, anjeun ngasupkeun angka 1 dina sél A5, lajeng angka 1 kedah muncul dina B15. Upami anjeun teras ngalebetkeun nomer 1 dina A7, maka 1 kedah muncul dina sél B22, sareng saterasna. Sacara umum, naon akuntan (teu ngan aranjeunna) nelepon total kumulatif.

Anjeun tiasa nerapkeun panyimpenan sél-akumulator sapertos nganggo makro saderhana. Klik-katuhu dina tab lambar dimana sél A1 sareng B1 ayana sareng pilih tina ménu kontéks Sumber téks (Kode sumber). Dina jandela pangropéa Visual Basic anu muka, salin sareng témpél kode makro anu saderhana:

Swasta Sub Worksheet_Change(ByVal Target Salaku Excel.Range) Jeung Target Lamun .Alamat(Palsu, Palsu) = "A1" Lajeng Lamun IsNumeric(.Value) Lajeng Application.EnableEvents = Palsu Rentang ("A2").Value = Rentang (" A2").Value + .Value Application.EnableEvents = True End If End If End With End Sub  

Alamat sél A1 sareng A2, tangtosna, tiasa digentos ku anjeun nyalira.

Upami anjeun kedah ngalacak éntri data sareng nyimpulkeun sanés sél individu, tapi sadayana rentang, maka makrona kedah rada robih:

Swasta Sub Worksheet_Change(ByVal Target Salaku Excel.Range) Lamun Teu Intersect (Target, Rentang ("A1: A10")) Euweuh Lajeng Mun IsNumeric(Target.Value) Lajeng Application.EnableEvents = Palsu Target.Offset(0, 1) .Value = Target.Offset(0, 1).Value + Target.Value Application.EnableEvents = True End If End If End Sub  

Hal ieu dianggap yén data diasupkeun kana sél rentang A1: A10, sarta angka diasupkeun dijumlahkeun up dina kolom padeukeut katuhu. Lamun bisi anjeun teu padeukeut, lajeng ningkatkeun shift ka katuhu dina operator Offset - ngaganti 1 kalawan jumlah nu leuwih gede.

  • Naon macros, dimana nyelapkeun kode makro di VBA, kumaha carana make eta?

Leave a Reply