Kumulatīvā šūna (kumulatīvā)

Saturs

Diezgan bieži rodas situācija, kad mums ir nepieciešams summēt (uzkrāt) vairākas vērtības, kas secīgi ievadītas vienā šūnā:

Tie. ja, piemēram, šūnā A1 ievadāt skaitli 5, tad skaitlim 1 jāparādās B15. Ja pēc tam ievadāt skaitli 1 laukā A7, tad šūnā B1 jāparādās 22 un tā tālāk. Vispār, ko grāmatveži (un ne tikai viņi) sauc par kumulatīvo kopsummu.

Jūs varat ieviest šādu uzglabāšanas šūnu akumulatoru, izmantojot vienkāršu makro. Ar peles labo pogu noklikšķiniet uz lapas cilnes, kurā atrodas šūnas A1 un B1, un konteksta izvēlnē atlasiet Avota teksts (Avota kods). Atvērtajā Visual Basic redaktora logā kopējiet un ielīmējiet vienkāršo makro kodu:

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").Vērtība = diapazons(" A2").Vērtība + .Value Application.EnableEvents = patiesās beigas, ja beigas, ja beigas ar beigu apakšpunktu  

Šūnu A1 un A2 adreses, protams, var aizstāt ar savām.

Ja nepieciešams izsekot datu ievadei un apkopot nevis atsevišķas šūnas, bet gan veselus diapazonus, makro būs nedaudz jāmaina:

Private Sub Worksheet_Change(ByVal Target As Excel.Range) Ja nekrustojas(Mērķis, diapazons("A1:A10")) nav nekas, tad, ja ir skaitlis(mērķis.vērtība), tad Application.EnableEvents = viltus Target.Offset(0, 1) .Value = Target.Offset(0, 1).Vērtība + Target.Value Application.EnableEvents = Patiesa beigas, ja beigas, ja beigu apakšpunkts  

Tiek pieņemts, ka dati tiek ievadīti diapazona A1:A10 šūnās, un ievadītie skaitļi tiek summēti blakus esošajā labajā pusē. Ja jūsu gadījumā tas nav blakus, tad operatorā Offset palieliniet nobīdi pa labi – nomainiet 1 ar lielāku skaitli.

  • Kas ir makro, kur ievietot makro kodu VBA, kā tos izmantot?

Atstāj atbildi