VBA स्विच केस - एक्सेल VBA स्विच स्टेटमेंट का उपयोग करने के उदाहरण

एक्सेल VBA स्विच केस

स्विच केस या सेलेक्ट केस तार्किक परीक्षण करने के लिए VBA में उपलब्ध एक स्टेटमेंट है जहां यह VBA में IF-THEN स्टेटमेंट के विकल्प के रूप में काम करता है। स्विच केस का उपयोग करके, हम कई तार्किक परीक्षण कर सकते हैं और कई परिणामों के आधार पर परिणाम प्राप्त कर सकते हैं।

नीचे स्विच केस / सिलेक्ट केस स्टेटमेंट का सिंटैक्स है।

कोड:

केस 1 टेस्ट का चयन करें, यदि केस 1 टेस्ट TRUE केस 2 मान है, यदि केस 2 टेस्ट TRUE केस 3 मान है, यदि केस 3 टेस्ट TRUE केस एल्स वैल्यू है, यदि उपरोक्त मामलों में से कोई भी मामला TRUE नहीं है, तो चयन करें

: तार्किक परीक्षण क्या है? हमें यहां परीक्षा देने की आवश्यकता है।

केस 1, केस 2: प्रत्येक मामले में, हमें एक्सेल में कई तार्किक परीक्षणों का परीक्षण करने की आवश्यकता है।

VBA स्विच केस स्टेटमेंट का उपयोग कैसे करें?

उदाहरण 1

सेल A1 में मैंने 550 के रूप में मान दर्ज किया है।

हम स्विच केस स्टेटमेंट का उपयोग करके इस संख्या का परीक्षण करेंगे और "500 से अधिक" के रूप में स्थिति में पहुंचेंगे यदि मूल्य 500 से अधिक है या फिर हम "कम से कम 500" के रूप में स्थिति में पहुंचेंगे।

पहले VBA सब प्रक्रिया खोलें।

कोड:

उप स्विच_केस () उप उप

VBA में सेलेक्ट केस स्टेटमेंट को खोलें और लॉजिकल टेस्ट रेंज (“A2”) की आपूर्ति करें

कोड:

उप स्विच_केस () केस रेंज ("ए 2") चुनें। मूल्य अंत उप

अब पहला मामला दर्ज करें क्योंकि केस> 500 है।

कोड:

सब स्विच_केस () केस रेंज ("ए 2") चुनें। वैल्यू केस है> 500 एंड सब

यदि यह मामला TRUE है, तो हमें सेल B, 2, अर्थात, "अधिक से अधिक 500" में क्या परिणाम की आवश्यकता है।

कोड:

सब स्विच_केस () केस रेंज ("ए 2") चुनें। वैल्यू केस> 500 रेंज ("बी 2") है। वैल्यू = "500 से अधिक" एंड सब

अब हम केवल एक परिणाम, यानी केस एल्स स्टेटमेंट के साथ बचे हैं। यदि पहला मामला FALSE है, तो हमें "500 से कम" परिणाम की आवश्यकता है।

कोड:

सब स्विच_केस () केस रेंज ("ए 2") चुनें। वैल्यू केस> 500 रेंज ("बी 2") है। वैल्यू = "500 से अधिक" केस एल्स रेंज ("बी 2")। मूल्य = "500 से कम" एंड।

अब “End Select” स्टेटमेंट का उपयोग करके स्टेटमेंट को बंद करें।

कोड:

उप स्विच_केस () केस रेंज ("ए 2") चुनें। वैल्यू केस> 500 रेंज ("बी 2") है। मूल्य = "500 से अधिक" केस एल्स रेंज ("बी 2")। मूल्य = "500 से कम" का चयन करें। अंत उप

कोड चलाएं हमें सेल बी 2 में मान मिलेगा।

चूंकि सेल A2 में मूल्य 500 से अधिक है, इसलिए हमें "500 से अधिक" के रूप में परिणाम मिला।

उदाहरण # 2

अब हम मामले के उदाहरणों का उपयोग करते हुए देखेंगे। परीक्षा में छात्र का स्कोर नीचे दिया गया है।

इस स्कोर के साथ, हमें ग्रेड पर पहुंचने की जरूरत है, इसके लिए नीचे मापदंड है।

  • स्कोर> = 85, ग्रेड = "जिला"
  • स्कोर> = 60, ग्रेड = "प्रथम"
  • स्कोर> = 50, ग्रेड = "दूसरा"
  • स्कोर> = 35, ग्रेड = "पास"
  • यदि कुछ और ग्रेड = "विफल"।

कोड:

उप स्विच_केस 1 ()

 पूर्णांक स्कोर के रूप में मंद स्कोर = 65 चयन केस स्कोर केस है> = 85 MsgBox "Dist" केस है = = 60 MsgBox "प्रथम" केस है> = 50 MsgBox "दूसरा" Case "> = 35 MsgBox" पास "केस MsseBox" असफल "अंत का चयन करें उप

इस कोड को चलाएं। हमें संदेश बॉक्स में ग्रेड मिलेगा।

Since the score is more than 60 but less than 85 grade is “First.”

Example #3

We have seen how to find a grade for one student, what about finding a grade for more than one student. Below are the scores of students.

Since more than one student is involved, we need to enclose FOR NEXT loop in VBA. Below is the VBA code.

Code:

Sub Switch_Case2() Dim k As Integer For k = 2 To 7 Select Case Cells(k, 2).Value Case Is>= 85 Cells(k, 3).Value = "Dist" Case Is>= 60 Cells(k, 3).Value = "First" Case Is>= 50 Cells(k, 3).Value = "Second" Case Is>= 35 Cells(k, 3).Value = "Pass" Case Else Cells(k, 3).Value = "Fail" End Select Next k End Sub

Run this code. We will get grades.

Things to Remember

  • Switch Case is often referred to as “Select Case.”
  • The switch is a function, not a statement.
  • यदि कोई तार्किक परीक्षण TRUE नहीं है, तो आप केवल CASE ELSE स्टेटमेंट में वैकल्पिक परिणाम पास कर सकते हैं और हमेशा "END SELECT" शब्द के साथ स्टेटमेंट को बंद कर सकते हैं।

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