वीबीए: sumif और sumifs फ़ंक्शन कैसे लिखें
आप Excel में VBA का उपयोग करके SUMIF और SUMIFS फ़ंक्शंस लिखने के लिए निम्नलिखित विधियों का उपयोग कर सकते हैं:
विधि 1: VBA में SUMIF फ़ंक्शन
SubSumif_Function ()
Range(" E2 ") = WorksheetFunction.Sumif(Range(" A2:A12 "), " Mavs ", Range(" B2:B12 "))
End Sub
यह विशेष उदाहरण श्रेणी B2:B12 में मानों का योग तभी करेगा जब श्रेणी A2:A12 में संबंधित मान “Mavs” के बराबर हो और परिणाम को सेल E2 पर निर्दिष्ट करें।
विधि 2: VBA में SUMIFS फ़ंक्शन
Sub Sumifs_Function()
Range(" E2 ") = WorksheetFunction.SumIfs(Range(" C2:C12 "), Range(" A2:A12 "), " Mavs ", Range(" B2:B12 "), " >20 ")
End Sub
यह विशेष उदाहरण श्रेणी C2:C12 में मानों का योग तभी करेगा जब श्रेणी A2:A12 में मान “Mavs” के बराबर हो और श्रेणी B2:B12 में मान 20 से अधिक हो, तो परिणाम को सेल E2 पर असाइन करें। .
निम्नलिखित उदाहरण दिखाते हैं कि एक्सेल में निम्नलिखित डेटासेट के साथ अभ्यास में इनमें से प्रत्येक विधि का उपयोग कैसे किया जाए जिसमें विभिन्न बास्केटबॉल खिलाड़ियों के बारे में जानकारी शामिल है:
उदाहरण 1: VBA में SUMIF फ़ंक्शन
मान लीजिए कि हम केवल उन खिलाड़ियों के लिए अंक कॉलम में मानों के योग की गणना करना चाहते हैं जो माव्स टीम में हैं।
हम इस SUMIF फ़ंक्शन को निष्पादित करने के लिए निम्नलिखित मैक्रो बना सकते हैं:
SubSumif_Function ()
Range(" E2 ") = WorksheetFunction.Sumif(Range(" A2:A12 "), " Mavs ", Range(" B2:B12 "))
End Sub
जब हम इस मैक्रो को चलाते हैं, तो हमें निम्नलिखित आउटपुट प्राप्त होता है:
ध्यान दें कि सेल E2 में मान 73 है।
यह माव्स टीम के खिलाड़ी के लिए अंक कॉलम में मूल्यों के योग का प्रतिनिधित्व करता है।
हम यह सत्यापित कर सकते हैं कि माव्स टीम के खिलाड़ियों के लिए अंक कॉलम में मानों के योग की मैन्युअल रूप से गणना करके यह सही है:
माव्स खिलाड़ियों के लिए अंकों का योग: 22 + 10 + 29 + 12 = 73 ।
उदाहरण 2: वीबीए में SUMIFS फ़ंक्शन
मान लें कि हम केवल उन खिलाड़ियों के लिए सहायता कॉलम में मानों के योग की गणना करना चाहते हैं जो निम्नलिखित मानदंडों को पूरा करते हैं:
- खिलाड़ी माव्स टीम का हिस्सा है।
- खिलाड़ी ने 20 से अधिक अंक अर्जित किये।
हम इस SUMIFS फ़ंक्शन को निष्पादित करने के लिए निम्नलिखित मैक्रो बना सकते हैं:
Sub Sumifs_Function()
Range(" E2 ") = WorksheetFunction.SumIfs(Range(" C2:C12 "), Range(" A2:A12 "), " Mavs ", Range(" B2:B12 "), " >20 ")
End Sub
जब हम इस मैक्रो को चलाते हैं, तो हमें निम्नलिखित आउटपुट प्राप्त होता है:
ध्यान दें कि सेल E2 में मान 18 है।
यह 20 से अधिक अंक हासिल करने वाले माव्स टीम के खिलाड़ियों के लिए अंक कॉलम में मूल्यों के योग को दर्शाता है।
ध्यान दें : इस उदाहरण में, हमने दो मानदंड श्रेणियों का उपयोग करके एक SUMIFS फ़ंक्शन बनाया है लेकिन आप वर्कशीटफंक्शन.SumIfs विधि में जितनी चाहें उतनी मानदंड श्रेणियों का उपयोग कर सकते हैं।
अतिरिक्त संसाधन
निम्नलिखित ट्यूटोरियल बताते हैं कि वीबीए में अन्य सामान्य कार्य कैसे करें:
VBA: COUNTIF और COUNTIFS फ़ंक्शंस कैसे लिखें
वीबीए: AVERAGEIF और AVERAGEIFS फ़ंक्शन कैसे लिखें