VBA राइट फंक्शन (उदाहरण) - एक्सेल VBA अधिकार के लिए कदम गाइड द्वारा कदम

VBA एक्सेल में राइट फंक्शन

राइट फंक्शन वर्कशीट फ़ंक्शन और VBA दोनों में समान है, इस फ़ंक्शन का उपयोग यह है कि यह हमें दिए गए स्ट्रिंग से सबस्ट्रिंग देता है लेकिन खोज स्ट्रिंग के दाईं से बाईं ओर की जाती है, यह VBA में स्ट्रिंग फ़ंक्शन का एक प्रकार है Application.worksheet फ़ंक्शन विधि के साथ उपयोग किया जाता है।

Excel VBA में राइट फ़ंक्शन का उपयोग आपूर्ति किए गए पाठ मानों के दाईं ओर से वर्ण निकालने के लिए किया जाता है। एक्सेल में, टेक्स्ट-आधारित डेटा से निपटने के लिए हमारे पास कई पाठ कार्य हैं। पाठ मानों से वर्ण निकालने के लिए कुछ उपयोगी कार्य LEN, LEFT, RIGHT, MID फ़ंक्शन हैं। इन कार्यों का उपयोग करने का सामान्य उदाहरण पहले नाम और अंतिम नाम को पूर्ण नाम से अलग से निकाल रहा है।

कार्यपत्रक में राइट फॉर्मूला भी है। VBA में, हमें VBA राइट फ़ंक्शन तक पहुंचने के लिए वर्कशीट फ़ंक्शन क्लास पर निर्भर रहने की आवश्यकता है; बल्कि, हमारे पास VBA में अंतर्निहित राइट फ़ंक्शन है।

अब VBA राइट फॉर्मूला के नीचे के सिंटैक्स पर एक नज़र डालें।

  • स्ट्रिंग: यह हमारा मूल्य है, और इस मूल्य से, हम स्ट्रिंग के दाईं ओर से पात्रों को निकालने की कोशिश कर रहे हैं।
  • लंबाई: आपूर्ति की गई स्ट्रिंग से, हमें कितने पात्रों की आवश्यकता है। यदि हमें दाईं ओर से चार वर्णों की आवश्यकता है, तो हम तर्क को 4 के रूप में आपूर्ति कर सकते हैं।

उदाहरण के लिए, यदि स्ट्रिंग "मोबाइल फोन" है और यदि हम केवल "फोन" शब्द निकालना चाहते हैं, तो हम नीचे दिए गए तर्क की आपूर्ति कर सकते हैं।

अधिकार ("मोबाइल फोन," 5)

कारण है कि मैंने 5 का उल्लेख किया क्योंकि "फोन" शब्द में 5 अक्षर हैं। लेख के अगले भाग में, हम देखेंगे कि हम इसे VBA में कैसे उपयोग कर सकते हैं।

एक्सेल VBA राइट फंक्शन के उदाहरण

निम्न फ़ंक्शन VBA एक्सेल के उदाहरण हैं।

उदाहरण 1

कार्यवाही शुरू करने के लिए मैं आपको एक सरल उदाहरण दिखाऊंगा। मान लें कि आपके पास "न्यूयॉर्क" स्ट्रिंग है, और यदि आप दाईं ओर से 3 वर्ण निकालना चाहते हैं, तो कोड लिखने के लिए नीचे दिए गए चरणों का पालन करें।

चरण 1: चर को VBA स्ट्रिंग के रूप में घोषित करें।

कोड:

सब राइट_एक्सप्लिमेंट 1 () डिम के ऐज़ स्ट्रिंग एंड सब

चरण 2: अब, इस चर के लिए, हम सही फ़ंक्शन को लागू करके मान प्रदान करेंगे।

कोड:

उप Right_Example1 () Dim k As String k = सही (अंतिम उप)

चरण 3: पहला तर्क स्ट्रिंग है, और इस उदाहरण के लिए हमारा स्ट्रिंग "न्यूयॉर्क" है।

कोड:

उप Right_Example1 () Dim k As String k = अधिकार ("न्यूयॉर्क", एंड सब

चरण 4: अगला है कि हमें आपूर्ति किए गए स्ट्रिंग से कितने वर्ण चाहिए। इस उदाहरण में, हमें 3 वर्ण चाहिए।

कोड:

उप Right_Example1 () मंद कश्मीर के रूप में स्ट्रिंग k = अधिकार ("न्यूयॉर्क", 3) उप उप

चरण 5: हमारे पास निपटने के लिए 2 तर्क हैं, इसलिए हम किए जाते हैं। अब VBA में संदेश बॉक्स में इस चर का मान असाइन करें।

कोड:

उप Right_Example1 () Dim k As String k = Right ("न्यूयॉर्क", 3) MsgBox k End Sub

F5 कुंजी या मैन्युअल का उपयोग करके कोड चलाएँ और संदेश बॉक्स में परिणाम देखें।

शब्द "न्यूयॉर्क" में दाईं ओर से 3 वर्ण "ork" हैं।

अब मैं पूर्ण मान प्राप्त करने के लिए लंबाई को 3 से 4 तक बदल दूंगा।

कोड:

उप Right_Example1 () Dim k As String k = Right ("न्यूयॉर्क", 4) MsgBox k End Sub

इस कोड को मैन्युअल रूप से चलाएं या F5 कुंजी का उपयोग करें। फिर, हमें "यॉर्क" मिलेगा।

उदाहरण # 2

अब एक और उदाहरण देखें, इस बार स्ट्रिंग मान को "माइकल क्लार्क" के रूप में देखें।

यदि आप लंबाई 6 के रूप में आपूर्ति करते हैं, तो हमें परिणामस्वरूप "क्लार्क" मिलेगा।

कोड:

उप Right_Example1 () डिम के रूप में स्ट्रिंग k = अधिकार ("माइकल क्लार्क", 6) MsgBox k

परिणाम देखने के लिए F5 कुंजी या मैन्युअल रूप से इस कोड का उपयोग करें।

एक्सेल VBA में डायनामिक राइट फंक्शन

यदि आप हमारे पिछले दो उदाहरणों का अवलोकन करते हैं, तो हमने मैन्युअल रूप से लंबाई तर्क संख्या की आपूर्ति की है। लेकिन यह काम करने के लिए सही प्रक्रिया नहीं है।

प्रत्येक स्ट्रिंग में, राइट-साइड वर्ण प्रत्येक मामले में भिन्न होते हैं। हम प्रत्येक मूल्य के लिए अलग-अलग अक्षरों की लंबाई को मैन्युअल रूप से संदर्भित नहीं कर सकते। यह जहां अन्य स्ट्रिंग फंक्शन "Instr" एक महत्वपूर्ण भूमिका निभाता है।

Instr फ़ंक्शन आपूर्ति की गई स्ट्रिंग मान में आपूर्ति की गई चरित्र स्थिति देता है। उदाहरण के लिए, इंस्ट्र (1, "बैंगलोर," ए) पहले " (1) चरित्र से " स्ट्रिंग "बैंगलोर" अक्षर "की स्थिति देता है ।

इस स्थिति में, परिणाम 2 है क्योंकि अक्षर के पहले वर्ण स्थिति से "a" 2 nd स्थिति है।

यदि मैं शुरुआती स्थिति को 1 से 3 में बदल देता हूं, तो यह 5 वापस आ जाएगी।

इंस्ट्र (3, "बैंगलोर," ए ")

कारण है कि यह रिटर्न 5 क्योंकि मैं प्रारंभिक स्थिति पत्र "एक" केवल 3 से देखने के लिए उल्लेख किया वां पत्र। तो दूसरे की स्थिति "ए" 5 दिखाई दी।

इसलिए, प्रत्येक स्ट्रिंग के स्थान वर्ण को खोजने के लिए, हम इसका उपयोग कर सकते हैं। एक बार जब हम अंतरिक्ष चरित्र की स्थिति पाते हैं, तो हमें LEN का उपयोग करके स्ट्रिंग की कुल लंबाई से शून्य करने की आवश्यकता होती है।

उदाहरण के लिए, स्ट्रिंग "न्यूयॉर्क" में, वर्णों की कुल संख्या 8 है, जिसमें अंतरिक्ष भी शामिल है, और अंतरिक्ष चरित्र की स्थिति 4 वें है । तो 8-4 = 4 दाईं ओर से 4 वर्ण निकालेंगे।

अब, अपने संदर्भ के लिए नीचे दिए गए कोड को देखें।

कोड:

Sub Right_Example3() Dim k As String Dim L As String Dim S As String L = Len("Michael Clarke") S = InStr(1, "Michael Clarke", " ") k = Right("Michael Clarke", L - S) MsgBox k End Sub

In the above code variable, “L” will return 14, and the variable “S” will return 8.

In the VBA right formula, I have applied L - S, i.e., 14-8 = 6. So from right side 6 characters, i.e., “Clarke.”

Loops with Right Function in Excel VBA

When we need to apply the VBA RIGHT function with many cells, we need to include this inside the loops. For example, look at the below image.

We cannot apply many lines of the code to extract a string from the right side. So we need to include loops. The below code will do it for the above data.

Code:

उप Right_Example4 () डिम k As String डिम L As String डिम S As String डिम a As Integer a a = 2 to 5 L = Len (Cell, (1) .Value) S = InStr (1, Cells (, 1) ) .Value, "") कक्ष (a, 2)

इस कोड का परिणाम निम्नानुसार है।

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