Cumulative cell (koketso)

Tse ka Hare

Hangata, ho hlaha boemo ha re hloka ho akaretsa (bokella) litekanyetso tse 'maloa tse kenngoeng ka tatellano ka seleng e le' ngoe:

Tseo. haeba, ho etsa mohlala, o kenya nomoro 1 selefounung ya A5, jwale nomoro ya 1 e tla hlaha ho B15. Haeba joale o kenya nomoro ea 1 ho A7, joale 1 e lokela ho hlaha ka seleng ea B22, joalo-joalo. Ka kakaretso, ke bo-ralitaba (eseng bona feela) ba bitsang kakaretso ea kakaretso.

U ka kenya ts'ebetsong e joalo ea polokelo ea selefouno u sebelisa macro e bonolo. Tobetsa ka ho le letona ho tabo ea lakane moo lisele tsa A1 le B1 li leng teng ebe u khetha ho tsoa ho menyu ea litaba Mongolo oa mohloli (Mohloli oa Mohloli). Ka fensetere ea Visual Basic editor e bulang, kopitsa le ho beha khoutu e bonolo ea macro:

Private Sub Worksheet_Change(ByVal Target As Excel.Range) With Target If .Address(False, False) = "A1" Then If IsNumeric(.Value) Then Application.EnableEvents = False Range("A2").Boleng = Range(" A2").Boleng + .Value Application.EnableEvents = True End If End If End With End Sub  

Liaterese tsa lisele tsa A1 le A2, ehlile, li ka nkeloa sebaka ke tsa hau.

Haeba o hloka ho lekola ho kenngoa ha data le ho akaretsa eseng lisele tse le 'ngoe, empa mefuta eohle, joale macro e tla tlameha ho fetoloa hanyane:

Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect(Target, Range("A1:A10")) Hase letho Joale If IsNumeric(Target.Value) Then Application.EnableEvents = False Target.Offset(0, 1) .Value = Target.Offset(0, 1).Boleng + Target.Value Application.EnableEvents = True End If End If End Sub  

Ho nahanoa hore data e kentsoe liseleng tsa mofuta oa A1: A10, 'me linomoro tse kentsoeng li akaretsoa kholomong e haufi ka ho le letona. Haeba molemong oa hau ha e bapile, joale eketsa phetoho ho ea ka ho le letona ho opereishene ea Offset - nka sebaka sa 1 ka palo e kholoanyane.

  • Li-macros ke eng, moo u ka kenyang khoutu ea macro ho VBA, mokhoa oa ho li sebelisa?

Leave a Reply