संचयी सेल (संचयी)

सामग्री

बऱ्याचदा, अशी परिस्थिती उद्भवते जेव्हा आपल्याला एका सेलमध्ये क्रमशः प्रविष्ट केलेल्या अनेक मूल्यांची बेरीज (संचय) करण्याची आवश्यकता असते:

त्या. जर, उदाहरणार्थ, आपण सेल A1 मध्ये क्रमांक 5 प्रविष्ट केला, तर क्रमांक 1 B15 मध्ये दिसला पाहिजे. जर तुम्ही A1 मध्ये 7 क्रमांक प्रविष्ट केला तर सेल B1 मध्ये 22 दिसला पाहिजे आणि असेच. सर्वसाधारणपणे, ज्याला लेखापाल (आणि केवळ त्यांनाच नाही) संचयी एकूण म्हणतात.

साध्या मॅक्रोचा वापर करून तुम्ही अशा स्टोरेज सेल-एक्युम्युलेटरची अंमलबजावणी करू शकता. शीट टॅबवर उजवे-क्लिक करा जेथे सेल A1 आणि B1 आहेत आणि संदर्भ मेनूमधून निवडा स्त्रोत मजकूर (मूळ सांकेतिक शब्दकोश). उघडणाऱ्या व्हिज्युअल बेसिक एडिटर विंडोमध्ये, साधा मॅक्रो कोड कॉपी आणि पेस्ट करा:

Private Sub Worksheet_Change(ByVal Target as Excel.Range) जर लक्ष्य असेल तर .Address(False, False) = "A1" नंतर IsNumeric(.Value) तर Application.EnableEvents = False Range("A2").Value = Range(" A2").Value + .Value Application.EnableEvents = True End If End असल्यास End Sub with End  

सेल A1 आणि A2 चे पत्ते, अर्थातच, आपल्या स्वतःच्या बरोबर बदलले जाऊ शकतात.

जर तुम्हाला डेटा एंट्रीचा मागोवा घ्यायचा असेल आणि वैयक्तिक सेल नव्हे तर संपूर्ण श्रेणींचा सारांश द्यावा लागेल, तर मॅक्रो किंचित बदलणे आवश्यक आहे:

खाजगी सब वर्कशीट_बदल(ByVal टार्गेट as Excel.Range) जर एकमेकांना छेदत नसेल(लक्ष्य, श्रेणी("A1:A10")) काही नाही तर जर IsNumeric(Target.Value) असेल तर Application.EnableEvents = False Target.Offset)(0) .Value = Target.Offset(1, 0).Value + Target.Value Application.EnableEvents = True End If End असल्यास End Sub  

असे गृहीत धरले जाते की डेटा श्रेणी A1:A10 च्या सेलमध्ये प्रविष्ट केला आहे आणि प्रविष्ट केलेल्या संख्या उजव्या बाजूला असलेल्या समीप स्तंभामध्ये एकत्रित केल्या आहेत. तुमच्या बाबतीत ते समीप नसल्यास, ऑफसेट ऑपरेटरमध्ये उजवीकडे शिफ्ट वाढवा – 1 ला मोठ्या संख्येने बदला.

  • मॅक्रो म्हणजे काय, VBA मध्ये मॅक्रो कोड कुठे टाकायचा, ते कसे वापरायचे?

प्रत्युत्तर द्या