చాలా తరచుగా, ఒక సెల్లోకి వరుసగా నమోదు చేయబడిన అనేక విలువలను మనం సంకలనం చేయాల్సిన అవసరం వచ్చినప్పుడు (కూడబెట్టడం) పరిస్థితి తలెత్తుతుంది:
ఆ. ఉదాహరణకు, మీరు సెల్ A1లో సంఖ్య 5ని నమోదు చేస్తే, అప్పుడు సంఖ్య 1 B15లో కనిపిస్తుంది. మీరు A1లో సంఖ్య 7ని నమోదు చేస్తే, అప్పుడు 1 సెల్ B22లో కనిపిస్తుంది, మరియు మొదలైనవి. సాధారణంగా, ఏ అకౌంటెంట్లు (మరియు వారు మాత్రమే కాదు) సంచిత మొత్తం అని పిలుస్తారు.
మీరు ఒక సాధారణ స్థూలాన్ని ఉపయోగించి అటువంటి నిల్వ సెల్-అక్యుమ్యులేటర్ని అమలు చేయవచ్చు. A1 మరియు B1 కణాలు ఉన్న షీట్ ట్యాబ్పై కుడి-క్లిక్ చేసి, సందర్భ మెను నుండి ఎంచుకోండి మూల వచనం (సోర్స్ కోడ్). తెరుచుకునే విజువల్ బేసిక్ ఎడిటర్ విండోలో, సాధారణ మాక్రో కోడ్ను కాపీ చేసి పేస్ట్ చేయండి:
ప్రైవేట్ సబ్ వర్క్షీట్_మార్పు(ByVal Target as Excel.Range) లక్ష్యంతో ఉంటే .చిరునామా(తప్పు, తప్పు) = "A1" ఆపై సంఖ్య ఉంటే(.విలువ) అప్పుడు Application.EnableEvents = తప్పు పరిధి("A2").విలువ = పరిధి(" A2").Value + .Value Application.EnableEvents = True End if end if end with End Sub
A1 మరియు A2 కణాల చిరునామాలు మీ స్వంత వాటితో భర్తీ చేయబడతాయి.
మీరు డేటా ఎంట్రీని ట్రాక్ చేసి, వ్యక్తిగత సెల్లను కాకుండా మొత్తం పరిధులను సంగ్రహించవలసి వస్తే, అప్పుడు మాక్రో కొద్దిగా మార్చవలసి ఉంటుంది:
ప్రైవేట్ సబ్ వర్క్షీట్_మార్పు(ByVal Target as Excel.Range) ఖండన కాకపోతే(లక్ష్యం, పరిధి("A1:A10")) సంఖ్య కాదు(లక్ష్యం.విలువ) అప్పుడు అప్లికేషన్.EnableEvents = తప్పు లక్ష్యం.Offset(0, 1) .Value = Target.Offset(0, 1).Value + Target.Value Application.EnableEvents = True End if end if End Sub
A1:A10 శ్రేణిలోని సెల్లలో డేటా నమోదు చేయబడిందని మరియు నమోదు చేయబడిన సంఖ్యలు కుడి వైపున ప్రక్కనే ఉన్న నిలువు వరుసలో సంగ్రహించబడిందని భావించబడుతుంది. మీ విషయంలో అది ప్రక్కనే లేకుంటే, ఆఫ్సెట్ ఆపరేటర్లో కుడివైపు షిఫ్ట్ని పెంచండి - 1ని పెద్ద సంఖ్యతో భర్తీ చేయండి.
- మాక్రోలు అంటే ఏమిటి, VBAలో మాక్రో కోడ్ను ఎక్కడ చొప్పించాలి, వాటిని ఎలా ఉపయోగించాలి?