मैक्रो में वर्कशीट फ़ंक्शंस का प्रयोग करें - वीबीए कोड उदाहरण

VBA में फ़ंक्शंस का उपयोग करने के कई तरीके हैं। VBA कई बिल्ट-इन फंक्शन से भरा हुआ आता है। तुम भी अपने स्वयं के कार्यों (यूडीएफ) बना सकते हैं। हालाँकि, आप Application.WorksheetFunction का उपयोग करके VBA में एक्सेल के कई कार्यों का भी उपयोग कर सकते हैं।

वीबीए में वर्कशीट फ़ंक्शंस का उपयोग कैसे करें

वीबीए में एक्सेल फ़ंक्शन तक पहुंचने के लिए आप जिस फ़ंक्शन को कॉल करना चाहते हैं उसके सामने Application.WorksheetFunction जोड़ें। नीचे दिए गए उदाहरण में, हम एक्सेल के मैक्स फंक्शन को कॉल करेंगे:

12 लंबे समय तक मंद अधिकतममानmaxvalue = Application.WorksheetFunction.Max(Range("a1").Value, Range("a2").Value)

फ़ंक्शंस का सिंटैक्स समान है, हालाँकि आप फ़ंक्शन तर्कों को वैसे ही दर्ज करेंगे जैसे आप किसी अन्य VBA फ़ंक्शन में करते हैं।

ध्यान दें कि जब आप टाइप करते हैं तो मैक्स फ़ंक्शन का सिंटैक्स प्रकट होता है (VBA फ़ंक्शंस के समान):

कार्यपत्रककार्य विधि

वर्कशीटफंक्शन एप्लिकेशन ऑब्जेक्ट की एक विधि है। यह आपको मानक एक्सेल वर्कशीट फ़ंक्शंस के कई (सभी नहीं) तक पहुंचने की अनुमति देता है। आम तौर पर, आप किसी भी वर्कशीट फ़ंक्शन तक पहुंच प्राप्त नहीं करेंगे, जिसमें संबंधित VBA संस्करण हो।

आप नीचे कई सबसे सामान्य वर्कशीट फ़ंक्शंस की सूची देख सकते हैं।

एप्लिकेशन। वर्कशीट फ़ंक्शन बनाम एप्लिकेशन

वास्तव में इन कार्यों तक पहुँचने के दो तरीके हैं:

Application.WorksheetFunction (जैसा कि ऊपर देखा गया है):

1 maxvalue = Application.WorksheetFunction.Max(Range("a1").Value, Range("a2").Value)

या आप वर्कशीट फंक्शन को छोड़ सकते हैं

1 मैक्सवेल्यू = एप्लीकेशन। मैक्स (रेंज ("ए 1")। वैल्यू, रेंज ("ए 2")। वैल्यू)

दुर्भाग्य से, वर्कशीट फंक्शन को छोड़ने से इंटेलीजेंस समाप्त हो जाएगा जो सिंटैक्स प्रदर्शित करता है (ऊपर की छवि देखें)। हालांकि, इसका एक बड़ा संभावित लाभ है: गलती संभालना.

यदि आप एप्लिकेशन का उपयोग करते हैं, और आपका फ़ंक्शन एक त्रुटि उत्पन्न करता है तो यह त्रुटि मान लौटाएगा। यदि आप वर्कशीट फ़ंक्शन विधि का उपयोग करते हैं, तो VBA एक रन टाइम त्रुटि देगा। बेशक, आप वीबीए त्रुटि को संभाल सकते हैं, लेकिन आमतौर पर पहली जगह में त्रुटि से बचना बेहतर होता है।

आइए अंतर देखने के लिए एक उदाहरण देखें:

Vlookup वर्कशीट फंक्शन एरर हैंडलिंग

हम एक Vlookup करने का प्रयास करेंगे जिसके परिणामस्वरूप कोई मैच नहीं होगा। तो Vlookup फंक्शन एक एरर लौटाएगा।

सबसे पहले, हम वर्कशीटफंक्शन विधि का उपयोग करेंगे। ध्यान दें कि कैसे VBA एक त्रुटि फेंकता है:

आगे हम वर्कशीट फंक्शन को छोड़ देते हैं। ध्यान दें कि कैसे

आगे हम वर्कशीट फंक्शन को छोड़ देंगे। ध्यान दें कि कैसे कोई त्रुटि नहीं डाली जाती है और इसके बजाय 'मान' फ़ंक्शन में Vlookup से त्रुटि मान होता है।

वीबीए वर्कशीट कार्य सूची

नीचे आपको अधिकांश सामान्य VBA वर्कशीट फ़ंक्शंस की सूची मिलेगी।

समारोहविवरण
तार्किक
तथाजाँचता है कि क्या सभी शर्तें पूरी होती हैं। सही गलत
अगरशर्त पूरी हो तो कुछ करो, नहीं तो कुछ और करो।
इफ़रोरअगर परिणाम में त्रुटि है तो कुछ और करें।
याजाँचता है कि क्या कोई शर्तें पूरी होती हैं। सही गलत
लुकअप और संदर्भ
चुनेंकिसी सूची से उसकी स्थिति संख्या के आधार पर कोई मान चुनता है.
लुकअपपहली पंक्ति में एक मान देखें और एक मान वापस करें।
अनुक्रमणिकाइसके कॉलम और पंक्ति संख्याओं के आधार पर एक मान देता है।
खोजेंमानों को क्षैतिज या लंबवत रूप से देखता है।
मिलानकिसी सूची में किसी मान की खोज करता है और उसकी स्थिति लौटाता है।
खिसकानाकोशिकाओं की एक श्रृंखला के उन्मुखीकरण को फ़्लिप करता है।
वीलुकअपपहले कॉलम में एक मान देखें और एक मान वापस करें।
दिनांक समय
दिनांकसाल, महीने और दिन से एक तारीख लौटाता है।
दिनांक मूल्यटेक्स्ट के रूप में संग्रहीत दिनांक को मान्य दिनांक में कनवर्ट करता है
दिनदिन को एक संख्या (1-31) के रूप में लौटाता है।
DAYS360360 दिन वाले वर्ष में 2 तिथियों के बीच के दिनों को लौटाता है।
संपादित करेंएक तारीख लौटाता है, जो शुरू होने की तारीख से n महीने दूर है।
ईओमोन्थमहीने का आखिरी दिन, n महीने दूर की तारीख देता है।
घंटाघंटे को एक संख्या (0-23) के रूप में लौटाता है।
मिनटमिनट को एक संख्या (0-59) के रूप में लौटाता है।
महीनामहीने को एक संख्या (1-12) के रूप में लौटाता है।
नेटवर्क दिवस2 तिथियों के बीच कार्य दिवसों की संख्या।
NETWORKDAYS.INTL2 तिथियों के बीच कार्य दिवस, कस्टम सप्ताहांत।
अभीवर्तमान दिनांक और समय लौटाता है।
दूसरासंख्या के रूप में दूसरा लौटाता है (0-59)
समयएक घंटे, मिनट और सेकंड से समय लौटाता है।
समय की कीमतपाठ के रूप में संग्रहीत समय को वैध समय में परिवर्तित करता है।
काम करने के दिनसप्ताह के दिन को एक संख्या (1-7) के रूप में लौटाता है।
सप्ताहनमएक वर्ष में सप्ताह की संख्या लौटाता है (1-52)।
कार्यदिवसदिनांक n दिनांक से कार्य दिवस।
वर्षवर्ष लौटाता है।
वर्ष2 तिथियों के बीच एक वर्ष का अंश देता है।
अभियांत्रिकी
धर्मांतरितसंख्या को एक इकाई से दूसरी इकाई में बदलें।
वित्तीय
एफवीभविष्य के मूल्य की गणना करता है।
पीवीवर्तमान मूल्य की गणना करता है।
NPERभुगतान अवधियों की कुल संख्या की गणना करता है।
पीएमटीभुगतान राशि की गणना करता है।
भावब्याज दर की गणना करता है।
एन पी वीशुद्ध वर्तमान मूल्य की गणना करता है।
आईआरआरआवधिक CFs के एक सेट के लिए वापसी की आंतरिक दर।
XIRRगैर-आवधिक CFs के एक सेट के लिए वापसी की आंतरिक दर।
कीमतएक बांड की कीमत की गणना करता है।
INTRATEपूरी तरह से निवेशित सुरक्षा की ब्याज दर।
जानकारी
ISERRपरीक्षण करें कि क्या सेल मान एक त्रुटि है, #N/A पर ध्यान नहीं देता है। सही गलत
इसरोरपरीक्षण करें कि क्या सेल मान एक त्रुटि है। सही गलत
सम हैपरीक्षण करें कि क्या सेल मान सम है। सही गलत
इस्लामीपरीक्षण करें कि क्या सेल तार्किक है (TRUE या FALSE)। सही गलत
ISNAपरीक्षण करें कि क्या सेल मान #N/A है। सही गलत
इस्नोटेक्स्टपरीक्षण करें कि क्या सेल टेक्स्ट नहीं है (रिक्त सेल टेक्स्ट नहीं हैं)। सही गलत
इसनंबरपरीक्षण करें कि क्या सेल एक संख्या है। सही गलत
अजीब हैपरीक्षण करें कि क्या सेल मान विषम है। सही गलत
ISTEXTपरीक्षण करें कि क्या सेल टेक्स्ट है। सही गलत
प्रकारसेल में मान का प्रकार लौटाता है।
गणित
पेटकिसी संख्या के निरपेक्ष मान की गणना करता है।
सकलकिसी डेटाबेस या सूची के लिए परिकलन को परिभाषित और निष्पादित करें।
छतकिसी संख्या को निकटतम निर्दिष्ट गुणक तक पूर्णांकित करता है।
भंडार नियंत्रककिसी कोण की कोज्या लौटाता है।
डिग्रीरेडियन को डिग्री में बदलता है।
डीएसयूएमसारांश डेटाबेस रिकॉर्ड जो कुछ मानदंडों को पूरा करते हैं।
यहाँ तक कीनिकटतम सम पूर्णांक तक पूर्णांकित करता है।
ऍक्स्पकिसी दी गई संख्या के लिए घातीय मान की गणना करता है।
तथ्यफैक्टोरियल लौटाता है।
मंज़िलकिसी संख्या को नीचे, निकटतम निर्दिष्ट गुणक तक पूर्णांकित करता है।
जीसीडीसबसे बड़ा सामान्य भाजक देता है।
NSकिसी संख्या को निकटतम पूर्णांक तक पूर्णांकित करता है।
एलसीएमकम से कम सामान्य गुणक देता है।
एलएनकिसी संख्या का प्राकृतिक लघुगणक देता है।
लॉगकिसी संख्या के लघुगणक को निर्दिष्ट आधार पर लौटाता है।
लॉग10किसी संख्या का आधार-10 लघुगणक देता है।
MOUNDकिसी संख्या को निर्दिष्ट गुणक में पूर्णांकित करता है।
अजीबनिकटतम विषम पूर्णांक तक पूर्णांकित करता है।
अनुकरणीयपीआई का मूल्य।
शक्तिकिसी घात तक बढ़ाई गई संख्या की गणना करता है।
उत्पादसंख्याओं की एक सरणी गुणा करता है।
लब्धिविभाजन का पूर्णांक परिणाम देता है।
रेडियंसएक कोण को रेडियन में बदलता है।
रैंडबीटवीनदो संख्याओं के बीच एक यादृच्छिक संख्या की गणना करता है।
गोलकिसी संख्या को अंकों की निर्दिष्ट संख्या तक पूर्णांकित करता है।
नीचे घूमोकिसी संख्या को नीचे (शून्य की ओर) पूर्णांकित करता है।
बढ़ानाकिसी संख्या को ऊपर (शून्य से दूर) गोल करता है।
पापकिसी कोण की ज्या लौटाता है।
उप-योगडेटा की शृंखला के लिए सारांश आँकड़ा देता है।
योगसंख्याओं को एक साथ जोड़ता है।
SUMIFयोग संख्याएं जो एक मानदंड को पूरा करती हैं।
SUMIFSयोग संख्याएँ जो कई मानदंडों को पूरा करती हैं।
SUMPRODUCTसंख्याओं के सरणियों को गुणा करता है और परिणामी सरणी का योग करता है।
टैनकिसी कोण की स्पर्श रेखा लौटाता है।
आँकड़े
औसतऔसत संख्या।
औसतऔसत संख्याएं जो एक मानदंड को पूरा करती हैं।
औसतकई मानदंडों को पूरा करने वाली औसत संख्याएं।
कोरेलदो श्रृंखलाओं के सहसंबंध की गणना करता है।
गिनतीउन कक्षों की गणना करता है जिनमें एक संख्या होती है।
COUNTAगैर-रिक्त कोशिकाओं की गणना करें।
काउंटब्लैंकरिक्त कक्षों की गणना करता है।
काउंटिफउन कक्षों की गणना करता है जो एक मानदंड को पूरा करते हैं।
COUNTIFSकई मानदंडों को पूरा करने वाले कक्षों की गणना करता है।
पूर्वानुमानरैखिक प्रवृत्ति रेखा से भविष्य के y-मानों की भविष्यवाणी करें।
आवृत्तिनिर्दिष्ट सीमाओं के भीतर आने वाले मानों की गणना करता है।
विकासघातीय वृद्धि के आधार पर Y मानों की गणना करता है।
अवरोधनसर्वोत्तम-फिट लाइन के लिए Y अवरोधन की गणना करता है।
बड़ाkth सबसे बड़ा मान देता है।
लाइनस्टकिसी ट्रेंडलाइन के बारे में आंकड़े देता है।
मैक्ससबसे बड़ी संख्या लौटाता है।
MEDIANमाध्यिका संख्या लौटाता है।
मिनटसबसे छोटी संख्या लौटाता है।
तरीकासबसे सामान्य संख्या देता है।
प्रतिशतताkth पर्सेंटाइल लौटाता है।
PERCENTILE.INCkth पर्सेंटाइल लौटाता है। जहां k समावेशी है।
PERCENTILE.EXCkth पर्सेंटाइल लौटाता है। जहां k अनन्य है।
चतुर्थकनिर्दिष्ट चतुर्थक मान लौटाता है।
QUARTILE.INCनिर्दिष्ट चतुर्थक मान लौटाता है। सहित।
चतुर्थक। EXCनिर्दिष्ट चतुर्थक मान लौटाता है। अनन्य।
पदएक श्रृंखला के भीतर एक संख्या की रैंक।
रैंक.औसतएक श्रृंखला के भीतर एक संख्या की रैंक। औसत।
रैंक.ईक्यूएक श्रृंखला के भीतर एक संख्या की रैंक। संवारने के लिए।
ढालरैखिक प्रतिगमन से ढलान की गणना करता है।
छोटाkth सबसे छोटा मान देता है।
एसटीडीईवीमानक विचलन की गणना करता है।
एसटीडीईवी.पीपूरी आबादी के एसडी की गणना करता है।
एसटीडीईवी.एसएक नमूने के एसडी की गणना करता है।
एसटीडीईवीपीसंपूर्ण जनसंख्या के SD की गणना करता है
ट्रेंडट्रेंडलाइन के आधार पर Y मानों की गणना करता है।
मूलपाठ
साफसभी गैर-मुद्रण योग्य वर्णों को हटा देता है।
डॉलरकिसी संख्या को मुद्रा प्रारूप में पाठ में परिवर्तित करता है।
पानासेल के भीतर टेक्स्ट की स्थिति का पता लगाता है। केस-संवेदी।
बाएंपाठ को बाईं ओर से कई वर्णों को काटता है।
लेनपाठ में वर्णों की संख्या गिनता है।
मध्यसेल के बीच से टेक्स्ट निकालता है।
ठीकटेक्स्ट को उचित केस में बदलता है।
बदलने केटेक्स्ट को उसके स्थान के आधार पर बदल देता है।
आरईपीटीपाठ को कई बार दोहराता है।
अधिकारटेक्स्ट को दाईं ओर से कई वर्णों को छोटा करता है।
खोजसेल के भीतर टेक्स्ट की स्थिति का पता लगाता है। केस-संवेदी नहीं।
विकल्पटेक्स्ट ढूंढता और बदलता है। अक्षर संवेदनशील।
मूलपाठएक विशिष्ट संख्या प्रारूप के साथ एक मान को टेक्स्ट में परिवर्तित करता है।
ट्रिमपाठ से सभी अतिरिक्त रिक्त स्थान हटा देता है।
wave wave wave wave wave