VBA स्प्लिट फंक्शन (उदाहरण) - एक्सेल VBA में स्ट्रिंग्स को कैसे विभाजित करें?

एक्सेल में VBA स्प्लिट फंक्शन क्या है?

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

सामान्य वर्कशीट LEFT फ़ंक्शन में, वाक्य के मध्य भाग को निकालने के लिए MID फ़ंक्शन और Excel में RIGHT का उपयोग टेक्स्ट फ़ंक्शन के रूप में किया जाता है। उदाहरण के लिए पहले नाम, मध्य नाम और अंतिम नाम का निष्कर्षण आम परिदृश्य है जिसे हमने देखा है। लेकिन वीबीए में हमारे पास SPLIT नामक अधिक बहुमुखी कार्य है जो आपके लिए एक समान कार्य करेगा। SPLIT एक्सेल VBA में एक बिल्ट-इन फंक्शन है जो डिलिमिटर के आधार पर सप्लाई किए गए वाक्य को विभाजित कर सकता है। उदाहरण के लिए, यदि आप ईमेल पते को अलग-अलग हिस्सों में विभाजित करना चाहते हैं, तो ईमेल पते में आम तत्व "@" है, जो सभी ईमेल आईडी में है, इसलिए "@" यहां सीमांकित हो जाता है।

VBA स्प्लिट स्ट्रिंग फंक्शन

विभाजन के अन्य सभी कार्यों की तरह इसके भी सिंटैक्स हैं। नीचे एक्सेल VBA स्प्लिट स्ट्रिंग फंक्शन के पैरामीटर दिए गए हैं।

  • मूल्य या अभिव्यक्ति: यह और कुछ नहीं बल्कि वास्तविक मूल्य है जिसे हम विभाजित करने की कोशिश कर रहे हैं। उदाहरण के लिए, यदि आप पहले नाम और अंतिम नाम को विभाजित करना चाहते हैं, तो पूरा नाम यहाँ मान है।
  • (Delimiter): मान या अभिव्यक्ति को विभाजित करने के लिए सामान्य तत्व क्या है? ईमेल में “@” सामान्य तत्व है, पते में अल्पविराम (,) सामान्य तत्व है। यदि आप इसे अनदेखा करते हैं तो यह अंतरिक्ष वर्ण को डिफ़ॉल्ट मान मानता है।
  • (सीमा): आपके द्वारा आपूर्ति की गई वैल्यू या एक्सप्रेशन से आप कितने सबस्ट्रिंग चाहते हैं। उदाहरण के लिए, यदि मान "मेरा नाम एक्सेल है", यदि आप 3 की आपूर्ति करते हैं, तो यह "माई", "नाम", "एक्सेल" जैसी तीन लाइनों में परिणाम दिखाएगा।
  • (तुलना): चूंकि हम तर्क का उपयोग नहीं करते हैं इसलिए इस वैकल्पिक तर्क को छोड़ दें।

लेख के अगले खंडों में, हम देखेंगे कि एक्सेल VBA में SPLIT फ़ंक्शन का व्यावहारिक रूप से उपयोग कैसे करें।

VBA स्प्लिट स्ट्रिंग फ़ंक्शन के उदाहरण

नीचे एक्सेल VBA में स्प्लिट फंक्शन के व्यावहारिक उदाहरण दिए गए हैं।

उदाहरण # 1 - वाक्य को विभाजित करें

स्प्लिट परिणाम को सरणी में देता है जो 0. से शुरू होगा। सभी सरणियां 0 से शुरू होती हैं 1 से नहीं।

मान लें कि आपके पास सेल A1 में "मेरा नाम एक्सेल VBA" शब्द है।

अब आप इस वाक्य को "My", "Name", "Is", "Excel", "VBA" जैसे टुकड़ों में विभाजित करना चाहते हैं। Excel VBA SPLIT स्ट्रिंग फ़ंक्शन का उपयोग करके हम इस परिणाम को वापस कर सकते हैं।

चरण 1: नाम के साथ मैक्रो प्रारंभ करें।

कोड:

सब स्प्लिट_एक्सप्लिमेंट 1 () एंड सब स्टेप 2: तीन वेरिएबल्स को डिक्लेयर करें।

कोड:

सब स्प्लिट_एक्सप्लिमेंट 1 () डिम माइट टेक्स्ट स्ट्रिंगिंग डिम के रूप में मैं इंटीजर डिम MyResult () स्टिंग एंड सब के रूप में

चरण 3: अब परिभाषित चर के लिए, मेरा पाठ शब्द "मेरा नाम एक्सेल VBA" है

कोड:

सब स्प्लिट_एक्सप्लिमेंट 1 () डिम माइट टेक्स्ट ऐज़ स्ट्रिंग डिम आई एज़ इंटर्गर डिम MyResult () ऐज़ स्ट्रिंग मायटैक्स = "माय नेम इज एक्सेल वीबीए" एंड सब

चरण 4: अब मेरे परिणाम चर के लिए VBA विभाजन स्ट्रिंग फ़ंक्शन लागू करें।

कोड:

सब स्प्लिट_एक्सप्लोम 1 () डिम माइट टेक्स्ट ऐज़ स्ट्रिंग डिम आई ऐज़ एंगर डिम म्युट्टल () स्ट्रींग मायटैक्स = "माई नेम इज एक्सेल वीबीए" माय ओस्कूल = स्प्लिट (एंड सब

चरण 5: अभिव्यक्ति हमारा पाठ मूल्य है। चूँकि हमने अपना पाठ मान पहले से ही चर दिया है मेरा पाठ इस तर्क में यहाँ दर्ज करें।

कोड:

सब स्प्लिट_एक्सप्लिमेंट 1 () डिम माइट टेक्स्ट स्ट्रिंगिंग डिम के रूप में मैं इंटीजर डिम MyResult () स्ट्रिंग मायटैक्स = "मेरा नाम एक्सेल VBA है" MyResult = स्प्लिट (MyText) एंड सब

नोट: जैसा कि अब सभी अन्य मापदंडों को अनदेखा करते हैं।

चरण 6: तो अब मेरा परिणाम इस विभाजन परिणाम को रखता है। जैसा कि मैंने पहले पोस्ट में बताया था, स्प्लिट फंक्शन परिणाम को एक सरणी के रूप में यहाँ संग्रहीत करता है

  • मेरा परिणाम (0) = "मेरा"
  • मेरा परिणाम (1) = "नाम"
  • मेरा परिणाम (2) = "है"
  • मेरा परिणाम (3) = "एक्सेल"
  • मेरा परिणाम (4) = "VBA"

भले ही यह कोड SPLIT फ़ंक्शन को शुरू करने के लिए कोई प्रभाव नहीं डालता है लेकिन हम इस कोड का उपयोग कर सकते हैं।

उदाहरण # 2 - VBA SPLIT स्ट्रिंग UBOUND फ़ंक्शन के साथ

SPLIT फ़ंक्शन के परिणाम को संग्रहीत करने के लिए, हम SPLIT फ़ंक्शन के साथ vba UBOUND फ़ंक्शन का उपयोग कर सकते हैं।

UBOUND सरणी की अधिकतम लंबाई लौटाएगा। उपरोक्त उदाहरण में, सरणी की अधिकतम लंबाई 5 थी।

एक ही शब्द "मेरा नाम एक्सेल VBA है" ले लो। चलो इस शब्द को विभाजित करते हैं और सेल A1 से स्टोर करते हैं।

Step 1: Let’s continue from where we left off in the previous example.

Step 2: Now apply FOR NEXT LOOP in VBA from 0 to maximum length of the array i.e. UBOUND.

The reason we started from zero because SPLIT will store the result from zero, not from 1.

Step 3: Now apply VBA CELLS property and store the result.

Code:

Cells(i + 1, 1).Value = MyResult(i)

Step 4: Run this code, we would have split values.

Complete Code:

Sub Split_Example1() Dim MyText As String Dim i As Integer Dim MyResult() As String MyText = "My Name is Excel VBA" MyResult = Split(MyText) For i = 0 To UBound(MyResult) Cells(i + 1, 1).Value = MyResult(i) Next i End Sub

Return Word Count

We can also show the total number of words in the supplied value. Use the below code to show the total number of word counts. Code:

Sub Split_Example2() Dim MyText As String Dim i As Integer Dim MyResult() As String MyText = "My Name is Excel VBA" MyResult = Split(MyText) i = UBound(MyResult()) + 1 MsgBox "Total Words Count is " & i End Sub

Copy and paste the above VBA code and run it, the message box will return the result.

Things to Remember

  • If the delimiter is not supplied SPLIT automatically thinks the delimiter as space.
  • If you want to split except space then you need to specify the delimiter in double-quotes.
  • SPLIT stores the result as array results.
  • UBOUND function returns the maximum length of the array.

Recommended Articles

यह VBA स्प्लिट फंक्शन का मार्गदर्शक रहा है। यहाँ हमने कुछ व्यावहारिक उदाहरणों और एक डाउनलोड करने योग्य एक्सेल टेम्पलेट के साथ एक्सेल में VBA स्प्लिट स्ट्रिंग फंक्शन का उपयोग करना सीखा। नीचे VBA से संबंधित कुछ उपयोगी एक्सेल लेख दिए गए हैं -

  • VBA में RegEx को कैसे सक्षम करें?
  • एक्सेल VBA में StrComp फंक्शन
  • VBA वर्कबुक ऑब्जेक्ट
  • एक्सेल में VBA स्लीप फंक्शन
  • एक्सेल VBA में एक पिवट टेबल बनाएँ
  • VBA में लूप तक करें
  • VBA में सेल का चयन करें
  • VBA में वर्कशीट फ़ंक्शन
  • सबस्क्रिप्ट हद से बाहर

दिलचस्प लेख...