Qelizë kumulative (kumulative)

Përmbajtje

Shumë shpesh, lind një situatë kur duhet të përmbledhim (akumulojmë) disa vlera të futura në mënyrë sekuenciale në një qelizë:

Ato. nëse, për shembull, futni numrin 1 në qelizën A5, atëherë numri 1 duhet të shfaqet në B15. Nëse më pas futni numrin 1 në A7, atëherë 1 duhet të shfaqet në qelizën B22, e kështu me radhë. Në përgjithësi, atë që kontabilistët (dhe jo vetëm ata) e quajnë një total kumulativ.

Ju mund të zbatoni një akumulues të tillë qelizash ruajtjeje duke përdorur një makro të thjeshtë. Klikoni me të djathtën në skedën e fletës ku ndodhen qelizat A1 dhe B1 dhe zgjidhni nga menyja e kontekstit Teksti burimor (Kodi i burimit). Në dritaren e redaktuesit të Visual Basic që hapet, kopjoni dhe ngjisni kodin e thjeshtë makro:

Nën-Private Worksheet_Change(ByVal Target As Excel.Range) Me Target If .Address(False, False) = "A1" Pastaj If IsNumeric(.Value) then Application.EnableEvents = False Range("A2").Value = Range(" A2".  

Adresat e qelizave A1 dhe A2, natyrisht, mund të zëvendësohen me tuajat.

Nëse keni nevojë të gjurmoni futjen e të dhënave dhe të përmblidhni jo qelizat individuale, por të gjithë vargjet, atëherë makro do të duhet të ndryshohet paksa:

Nën-Fletë pune private_Change(ByVal Target si Excel.Range) Nëse nuk ndërpritet(Target, Range("A1:A10")) Is Nothing then If IsNumeric(Target.Value) then Application.EnableEvents = False Target.Offset(0, 1) .Vlera = Target.Offset(0, 1).Vlera + Target.Vlera Application.EnableEvents = Fundi i vërtetë Nëse Fundi Nëse Fundi Nën  

Supozohet se të dhënat futen në qelizat e diapazonit A1:A10, dhe numrat e futur përmblidhen në kolonën ngjitur në të djathtë. Nëse në rastin tuaj nuk është ngjitur, atëherë rrisni zhvendosjen në të djathtë në operatorin Offset - zëvendësoni 1 me një numër më të madh.

  • Cilat janë makrot, ku të futni kodin makro në VBA, si t'i përdorni ato?

Lini një Përgjigju