सामग्री तालिका
कार्यान्वयन VBA एक्सेलमा कुनै पनि अपरेशन चलाउनको लागि सबैभन्दा प्रभावकारी, छिटो र सुरक्षित तरिका हो। यस लेखमा, हामी एक्सेलमा VBA प्रयोग गरेर अर्को दिइएको स्ट्रिङमा कसरी निश्चित स्ट्रिङहरू फेला पार्ने भनेर देखाउनेछौं।
अभ्यास टेम्प्लेट डाउनलोड गर्नुहोस्
तपाईं यहाँबाट नि:शुल्क अभ्यास एक्सेल टेम्प्लेट डाउनलोड गर्न सक्नुहुन्छ।
VBA String.xlsm
InStr प्रकार्य
माइक्रोसफ्ट एक्सेलसँग दिइएको स्ट्रिङमा विशिष्ट स्ट्रिङहरूको स्थिति पत्ता लगाउन InStr प्रकार्य भनिने अन्तर्निहित प्रकार्य छ।
जेनेरिक सिन्ट्याक्स:
InStr([start], string1, string2, [compare])
यहाँ,
तर्कहरू | आवश्यक/ ऐच्छिक 2> | परिभाषा |
---|---|---|
स्टार्ट | ऐच्छिक | खोजको सुरुवात स्थिति।
|
स्ट्रिङ१ | आवश्यक खोज्नको लागि स्ट्रिङ, प्राथमिक स्ट्रिङ। | |
स्ट्रिङ2 | आवश्यक | प्राथमिक स्ट्रिङमा खोज्नको लागि स्ट्रिङ . |
तुलना | वैकल्पिक | InStr प्रकार्य पूर्वनिर्धारित रूपमा केस-संवेदनशील हुन्छ। तर यदि तपाइँ केस असंवेदनशील InStr चलाउन चाहनुहुन्छ भने, तपाइँ निश्चित तुलना गर्न यहाँ तर्क पास गर्न सक्नुहुन्छ। यो तर्क निम्न हुन सक्छमानहरू,
पूर्वनिर्धारित रूपमा, InStr ले vbBinaryCompare तुलना तर्कको रूपमा लिन्छ। |
8 VBA प्रयोग गरी दिइएको स्ट्रिङमा विशिष्ट स्ट्रिङ पोजिसन पत्ता लगाउन सजिलो उदाहरणहरू
प्रयोग गरेर दिइएको स्ट्रिङमा निश्चित स्ट्रिङको स्थिति प्राप्त गर्नका लागि केही सरल उदाहरणहरू हेरौं। 1 स्ट्रिङमा पाठको स्थिति।
- तपाईँको किबोर्डमा Alt + F11 थिच्नुहोस् वा ट्याबमा जानुहोस् विकासकर्ता -> भिजुअल बेसिक खोल्न भिजुअल बेसिक सम्पादक ।
- पप-अप कोड विन्डोमा, मेनु पट्टीबाट , क्लिक गर्नुहोस् घुसाउनुहोस् -> मोड्युल ।
- अब कोड विन्डोमा, एउटा VBA Sub भित्र एउटा साधारण InStr प्रोग्राम लेख्नुहोस्। प्रक्रिया (तल हेर्नुहोस्)।
1269
तपाईँको कोड अब चल्नको लागि तयार छ।
- थिच्नुहोस् F5 तपाईंको किबोर्डमा वा मेनु पट्टीबाट चलाउनुहोस् -> Sub/UserForm चलाउनुहोस्। म्याक्रो चलाउनको लागि सब-मेनु पट्टीमा रहेको सानो प्ले आइकन मा क्लिक गर्नुहोस्।
तपाईंले देख्नुहुनेछ कि पप-अप सन्देश बक्सले तपाईंलाई नम्बर दिनेछतपाईंले जाँच गर्न चाहनुभएको पाठको स्थिति घोषणा गर्दै।
स्पष्टीकरण:
हाम्रो प्राथमिक स्ट्रिङ, “ खुशी छनोट हो ” एउटा २१ अक्षरको वाक्य हो (स्पेस सहित) र हामी त्यो स्ट्रिङमा " छनोट " पाठको स्थिति फेला पार्न चाहन्छौं। पाठ " छनौट " प्राथमिक स्ट्रिङको 16 औं स्थानबाट सुरु भयो, त्यसैले हामीले सन्देश बक्समा हाम्रो आउटपुटको रूपमा नम्बर 16 पायौं।
2। VBA स्ट्रिङमा एक विशिष्ट स्थानबाट पाठ फेला पार्नको लागि
अब हामी निश्चित संख्याबाट स्थिति प्राप्त गर्न चाहन्छौं भने के हुन्छ भनेर पत्ता लगाउनुहोस्।
- जस्तै पहिले, विकासकर्ता ट्याबबाट भिजुअल बेसिक सम्पादक खोल्नुहोस् र कोड विन्डोमा घुसाउनुहोस् ए मोड्युल ।
- मा कोड सञ्झ्यालमा, माथि देखाइएको एउटा साधारण InStr प्रोग्राम लेख्नुहोस् र तपाईले आफ्नो पाठ गणना गर्न चाहनु भएको स्थिति अनुसार स्टार्ट आर्गुमेन्टमा मान पास गर्नुहोस्।
8254
- अर्को, रन कोड।
तपाईंले देख्नुहुनेछ कि पप-अप सन्देश बक्स हुनेछ। तपाईलाई एउटा नम्बर दिनुहोस् पाठको स्थिति घोषणा गर्दै कुनै निश्चित स्थितिबाट सुरु गरेर जुन तपाईंले जाँच गर्न चाहनु भएको थियो।
स्पष्टीकरण:
हामीलाई पहिले नै थाहा थियो (चरण १ छलफलबाट) कि पाठ " छनौट " 16 को स्थितिबाट सुरु भयो, त्यसैले हामीले दुईवटा सम्मिलित गर्यौं। प्राथमिक स्ट्रिङमा विकल्प ” र 17 लाई हाम्रो रूपमा सेट गर्नुहोस्पहिलो " विकल्प " छोड्नको लागि पहिलो प्यारामिटर। त्यसोभए, हामीले रन माथिको म्याक्रो र यसले हामीलाई स्थिति नम्बर 27 देखाउँछ जुन ठ्याक्कै सेकेन्ड " विकल्प " को स्थिति नम्बर हो। दिइएको स्ट्रिङमा।
3। VBA स्ट्रिङमा केस-संवेदनशील InStr प्रकार्यको साथ पाठ खोज्नको लागि
InStr प्रकार्यको परिचयबाट तपाइँलाई पहिले नै थाहा छ कि पूर्वनिर्धारित रूपमा, InStr प्रकार्य। केस सेन्सेटिभ छ। यसलाई एउटा उदाहरणको साथ पत्ता लगाउनुहोस्।
निम्न VBA कोड हेर्नुहोस्, जहाँ हामीले शब्दको स्थिति पत्ता लगाउन चाहन्थ्यौँ “ छनोट " क्यापिटल "C" स्ट्रिङमा " Happiness is a choice " जहाँ छनोट सानो "c" सँग लेखिएको छ।
- रन कोड र 0 हाम्रो आउटपुटको रूपमा फेला पार्नुहोस्।
त्यो हो किनभने InStr प्रकार्यले capital “C” र small “c” लाई फरक तरिकाले व्यवहार गर्छ। त्यसैले यसले स्ट्रिङमा “ छनौट ” शब्द खोज्यो र कुनै पनि मिलाउन सकेन, त्यसैले 0 फर्कियो।
- <17 InStr प्रकार्य केस-संवेदनशील बनाउनको लागि, तुलना तर्कलाई vbTextCompare मा सेट गर्नुहोस् (तल हेर्नुहोस्)।
6424
- कोड चलाउनुहोस्।
तपाईंले पाठको स्थिति पाउनुहुनेछ स्ट्रिङबाट, चाहे पाठ क्यापिटल अक्षरमा वा सानो अक्षरमा लेखिएको होस् ।
४. स्ट्रिङको दायाँबाट पाठ फेला पार्न VBA
अहिलेसम्म InStr प्रकार्यले हामीलाई स्ट्रिङको बायाँ तर्फबाट स्थिति मात्र दिइरहेको थियो। तर के हुन्छ यदि तपाइँ स्ट्रिङको दायाँ छेउबाट पाठ स्थिति फेला पार्न चाहनुहुन्छ भने।
InStrRev प्रकार्य दायाँबाट खोज्छ। InStrRev प्रकार्यले InStr प्रकार्यसँग समान रूपमा काम गर्दछ र यसले तपाईँलाई स्ट्रिङको दायाँ तर्फ बाट पाठको स्थिति फेला पार्नेछ।
भिन्नता बुझ्न निम्न उदाहरणहरू हेर्नुहोस्।
- यदि हामीले निम्न कोडलाई InStr प्रकार्यसँग चलाउँछौँ भने,
यसले हामीलाई पहिलो पाठ " छनोट " को स्थिति ( 16 ) दिन्छ।
- तर यदि हामीले InStrRev प्रकार्यको साथ एउटै कोड चलायौं भने,
यसले हामीलाई स्थिति दिन्छ। ( 27 ) अन्तिम पाठ “ छनोट ”।
समान पाठहरू:
- Excel मा VBA प्रयोग गरेर अर्को फेला पार्नुहोस् (2 उदाहरणहरू)
- VBA प्रयोग गरेर कसरी फेला पार्ने र प्रतिस्थापन गर्ने (11 तरिकाहरू)
- एक्सेलमा VBA प्रयोग गरेर सटीक मिलान खोज्नुहोस् (५ तरिका)
5। VBA स्ट्रिङमा क्यारेक्टरको पोजिशन फेला पार्न
तपाईँले पाठ फेला पारेको तरिकाले स्ट्रिङमा कुनै निश्चित क्यारेक्टरको स्थिति पनि फेला पार्न सक्नुहुन्छ।
- प्रतिलिपि गर्नुहोस्। तपाईंको VBA कोड विन्डो
9669
- र रन म्याक्रोमा निम्न कोड।
हाम्रो दिइएको स्ट्रिङमा पहिलो " e " मा छनम्बर 7 स्थिति।
6। स्ट्रिङमा सबस्ट्रिङ फेला पार्न VBA
यहाँ हामीले स्ट्रिङमा सबस्ट्रिङ समावेश छ वा छैन भनेर कसरी पत्ता लगाउने भन्ने कुरा सिक्ने छौँ।
त्यो प्राप्त गर्न हामीसँग छ। हाम्रो कोडमा IF स्टेटमेन्ट चलाउन।
- पहिले जस्तै, विकासकर्ता ट्याबबाट भिजुअल बेसिक सम्पादक खोल्नुहोस् र कोड विन्डोमा घुसाउनुहोस् एउटा मोड्युल ।
- कोड विन्डोमा, निम्न कोड प्रतिलिपि गरेर टाँस्नुहोस्।
7971
तपाईंको कोड अब चल्नको लागि तयार छ।
- चलाउनुहोस् म्याक्रो।
यदि तपाईँको स्ट्रिङमा सबस्ट्रिङ समावेश छ तब तपाईँले मिलान फेला परेको पाउनुहुनेछ, अन्यथा, यसले कुनै मिल्दो फेला परेन। हाम्रो उदाहरणमा, हामीले हाम्रो प्राथमिक स्ट्रिङ " खुशी भनेको छनोट हो " मा " छनोट " शब्द समावेश छ वा छैन भनी पत्ता लगाउन चाहन्थ्यौँ। होइन। जसरी यसले गर्छ, हामीले मिलान भेटियो परिणाम पाउँछौं।
7। सेल दायरामा स्ट्रिङ फेला पार्न VBA
तपाईले स्ट्रिङको सेल दायरामा कुनै निश्चित पाठ खोज्न सक्नुहुन्छ र निश्चित स्ट्रिङ फर्काउन सक्नुहुन्छ।
हामीले निम्न उदाहरणमा हेरौँ " डा. " फेला पार्नुहोस् र जब त्यहाँ मेल खान्छ तब यो " डाक्टर " फर्किनेछ।
- माथि छलफल गरिएको नतिजा प्राप्त गर्नको लागि तलको कोड छ,
6264
- रन द कोड र परिणाम तल देखाइएको छ
- तपाईले आफ्नो आवश्यकता अनुसार म्याक्रो परिमार्जन गर्न सक्नुहुन्छ। उदाहरणका लागि, यदि तपाईं चाहनुहुन्छ भनेस्ट्रिङको कुनै पनि कक्षमा “ प्रोफेसर ” फेला पार्न, र फिर्ताको रूपमा “ प्राध्यापक ” प्राप्त गर्नुहोस्, त्यसपछि केवल “<1” पास गर्नुहोस्> प्रा. " मानको रूपमा " डा ।" म्याक्रोको 4 औं लाइनमा र म्याक्रोको 5 औं लाइनमा “ डक्टर ” को सट्टा “ प्रोफेसर ” र परिभाषित गर्नुहोस्। तदनुसार सेल दायरा नम्बर।
8। सेलमा स्ट्रिङ फेला पार्न VBA
तपाईँ स्ट्रिङको एउटै सेलमा निश्चित पाठ खोज्न र निश्चित स्ट्रिङ फर्काउन पनि सक्नुहुन्छ।
- निम्न कोड प्रतिलिपि गर्नुहोस् र कोड विन्डोमा टाँस्नुहोस्।
8523
यसले “ डा. <2 खोज्नेछ।>” सेल B5 मा र यदि यसले मेल खायो भने सेल C5 मा “ डाक्टर ” फर्काउँछ।
- तपाईले आफ्नो आवश्यकता अनुसार म्याक्रो परिमार्जन गर्न सक्नुहुन्छ। उदाहरणका लागि, यदि तपाइँ स्ट्रिङको कुनै पनि कक्षमा " प्रा. " फेला पार्न चाहनुहुन्छ भने, र फिर्ताको रूपमा " प्राध्यापक " प्राप्त गर्न चाहनुहुन्छ भने, त्यसपछि " Dr " को सट्टा मानको रूपमा " प्रा. " लाई पास गर्नुहोस्। म्याक्रोको दोस्रो लाइनमा र म्याक्रोको तेस्रो लाइनमा “ डाक्टर ” को सट्टा “ प्रोफेसर ” र परिभाषित गर्नुहोस्। तदनुसार सेल सन्दर्भ नम्बर।
निष्कर्ष
यस लेखले तपाइँलाई एक्सेलमा स्ट्रिङमा VBA म्याक्रो प्रयोग गरेर निश्चित पाठहरू कसरी फेला पार्ने भनेर देखाएको छ। मलाई आशा छ यो लेख तपाईलाई धेरै लाभदायक भएको छ। सम्बन्धमा कुनै पनि प्रश्न सोध्न नहिचकिचाउनुहोस्विषय।